GE FANUC CIMPLICITY HMI Interface

Version 4.3.1.0

OSIsoft, LLC
777 Davis St., Suite 250
San Leandro, CA 94577 USA
Tel: (01) 510-297-5800
Fax: (01) 510-357-8136
Web: http://www.osisoft.com
OSIsoft Australia • Perth, Australia
OSIsoft Europe GmbH • Frankfurt, Germany
OSIsoft Asia Pte Ltd. • Singapore
OSIsoft Canada ULC • Montreal & Calgary, Canada
OSIsoft, LLC Representative Office • Shanghai, People’s Republic of China
OSIsoft Japan KK • Tokyo, Japan
OSIsoft Mexico S. De R.L. De C.V. • Mexico City, Mexico
OSIsoft do Brasil Sistemas Ltda. • Sao Paulo, Brazil
Copyright: © 1994-2010 OSIsoft, LLC. All rights reserved.
No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, mechanical, photocopying, recording, or otherwise, without the prior written permission of OSIsoft, LLC.
OSIsoft, the OSIsoft logo and logotype, PI Analytics, PI ProcessBook, PI DataLink, ProcessPoint, Sigmafine, Analysis Framework, IT Monitor, MCN Health Monitor, PI System, PI ActiveView, PI ACE, PI AlarmView, PI BatchView, PI Data Services, PI Manual Logger, PI ProfileView, PI WebParts, ProTRAQ, RLINK, RtAnalytics, RtBaseline, RtPortal, RtPM, RtReports and RtWebParts are all trademarks of OSIsoft, LLC. All other trademarks or trade names used herein are the property of their respective owners.
U.S. GOVERNMENT RIGHTS
Use, duplication or disclosure by the U.S. Government is subject to restrictions set forth in the OSIsoft, LLC license agreement and as provided in DFARS 227.7202, DFARS 252.227-7013, FAR 12.212, FAR 52.227, as applicable. OSIsoft, LLC.
Published: 06/2010

Table of Contents

Terminology vii

Chapter 1. Introduction 1

Reference Manuals 2

Supported Features 3

Diagram of Hardware Connection 7

Chapter 2. Principles of Operation 9

Chapter 3. Installation Checklist 13

Data Collection Steps 13

Interface Diagnostics 15

Advanced Interface Features 15

Chapter 4. Interface Installation 17

Naming Conventions and Requirements 17

Interface Directories 18

PIHOME Directory Tree 18

Interface Installation Directory 18

Interface Installation Procedure 18

Installing Interface as a Windows Service 19

Installing Interface Service with PI Interface Configuration Utility 19

Service Configuration 19

Installing Interface Service Manually 22

Chapter 5. Connection Tool 23

Chapter 6. Digital States 25

Chapter 7. PointSource 27

Chapter 8. PI Point Configuration 29

Point Attributes 29

Tag 29

PointSource 30

PointType 30

Location1 30

Location2 30

Location3 30

Location4 30

Location5 31

InstrumentTag 31

ExDesc 32

Scan 32

Shutdown 32

UserInt1 33

Output Points 33

Trigger Method 1 (Recommended) 34

Trigger Method 2 34

Chapter 9. Startup Command File 35

Configuring the Interface with PI ICU 35

gecimpi Interface page 38

Command-line Parameters 41

Sample PICimpi_HMIxx.bat File 46

Chapter 10. UniInt Failover Configuration 47

Introduction 47

Quick Overview 48

Synchronization through the Data Source (Phase 1) 49

Configuring Synchronization through the Data Source (Phase 1) 50

Configuring UniInt Failover through the Data Source (Phase 1) 54

Start-Up Parameters 54

Failover Control Points 55

Data Source Points 56

PI Tags 60

Control Point Data Flow 63

Detailed Explanation of Synchronization through the Data Source 65

Steady State Operation 66

Synchronization through a Shared File (Phase 2) 68

Configuring Synchronization through a Shared File (Phase 2) 69

Configuring UniInt Failover through a Shared File (Phase 2) 72

Start-Up Parameters 72

Failover Control Points 74

PI Tags 75

Detailed Explanation of Synchronization through a Shared File (Phase2) 79

Steady State Operation 80

Failover Configuration Using PI ICU 82

Create the Interface Instance with PI ICU 82

Configuring the UniInt Failover Startup Parameters with PIICU 83

Creating the Failover State Digital State Set 85

Using the PI ICU Utility to create Digital State Set 85

Using the PI SMT 3 Utility to create Digital State Set 85

Creating the UniInt Failover Control and Failover State Tags (Phase 1) 88

Creating the UniInt Failover Control and Failover State Tags (Phase 2) 89

Converting from Phase 1 to Phase 2 Failover 90

Procedure 90

Chapter 11. Interface Node Clock 91

Windows 91

Chapter 12. Security 93

Windows 93

Chapter 13. Starting / Stopping the Interface on Windows 95

Starting Interface as a Service 95

Stopping Interface Running as a Service 95

Chapter 14. Buffering 97

Which Buffering Application to Use 97

How Buffering Works 98

Buffering and PI Server Security 98

Enabling Buffering on an Interface Node with the ICU 99

Choose Buffer Type 99

Buffering Settings 100

Buffered Servers 102

Installing Buffering as a Service 105

Chapter 15. Interface Diagnostics Configuration 109

Scan Class Performance Points 109

Performance Counters Points 109

Performance Counters 111

Performance Counters for both (_Total) and (Scan Class x) 111

Performance Counters for (_Total) only 112

Performance Counters for (Scan Class x) only 113

Interface Health Monitoring Points 114

I/O Rate Point 118

Interface Status Point 120

Appendix A. Error and Informational Messages 123

Message Logs 123

Messages 123

System Errors and PI Errors 125

UniInt Failover Specific Error Messages 125

Informational 125

Errors (Phase 1 & 2) 126

Errors (Phase 1) 127

Errors (Phase 2) 128

Appendix B. PI SDK Options 129

Appendix C. Technical Support and Resources 131

Before You Call or Write for Help 131

Help Desk and Telephone Support 131

Search Support 132

Email-based Technical Support 132

Online Technical Support 132

Remote Access 133

On-site Service 133

Knowledge Center 133

Upgrades 133

Appendix D. Revision History 135

GE FANUC CIMPLICITY HMI Interface v

Terminology

To understand this interface manual, you should be familiar with the terminology used in this document.

Buffering

Buffering refers to an Interface Node’s ability to store temporarily the data that interfaces collect and to forward these data to the appropriate PI Servers.

N-Way Buffering

If you have PI Servers that are part of a PI Collective, PIBufss supports n-way buffering. N-way buffering refers to the ability of a buffering application to send the same data to each of the PI Servers in a PI Collective. (Bufserv also supports n-way buffering to multiple PI Server however it does not guarantee identical archive records since point compressions specs could be different between PI Servers. With this in mind, OSIsoft recommends that you run PIBufss instead.)

ICU

ICU refers to the PI Interface Configuration Utility. The ICU is the primary application that you use to configure PI interface programs. You must install the ICU on the same computer on which an interface runs. A single copy of the ICU manages all of the interfaces on a particular computer.

You can configure an interface by editing a startup command file. However, OSIsoft discourages this approach. Instead, OSIsoft strongly recommends that you use the ICU for interface management tasks.

ICU Control

An ICU Control is a plug-in to the ICU. Whereas the ICU handles functionality common to all interfaces, an ICU Control implements interface-specific behavior. Most PI interfaces have an associated ICU Control.

Interface Node

An Interface Node is a computer on which

the PI API and/or PI SDK are installed, and

PI Server programs are not installed.

PI API

The PI API is a library of functions that allow applications to communicate and exchange data with the PI Server. All PI interfaces use the PI API.

PI Collective

A PI Collective is two or more replicated PI Servers that collect data concurrently. Collectives are part of the High Availability environment. When the primary PI Server in a collective becomes unavailable, a secondary collective member node seamlessly continues to collect and provide data access to your PI clients.

PIHOME

PIHOME refers to the directory that is the common location for PI 32-bit client applications.

On a 32-bit Operating system

A typical PIHOME is C:\Program Files\PIPC.

On a 64-Bit Operating system

A typical PIHOME is C:\Program Files (x86)\PIPC.

PI interfaces reside in a subdirectory of the Interfaces directory under PIHOME.

For example, files for the Modbus Ethernet Interface are in C:\ProgramFiles\PIPC\Interfaces\ModbusE.

This document uses [PIHOME] as an abbreviation for the complete PIHOME or PIHOME64 directory. For example, ICU files in [PIHOME]\ICU.

PIHOME64

PIHOME64 will be found only on a 64-bit Operating System and refers to the directory that is the common location for PI 64-bit client applications.

A typical PIHOME64 is C:\Program File\PIPC.

PI interfaces reside in a subdirectory of the Interfaces directory under PIHOME64.

For example, files for a 64-bit Modbus Ethernet Interface would be found in C:\ProgramFiles\PIPC\Interfaces\ModbusE.

This document uses [PIHOME] as an abbreviation for the complete PIHOME or PIHOME64 directory. For example, ICU files in [PIHOME64]\ICU.

PI SDK

The PI SDK is a library of functions that allow applications to communicate and exchange data with the PI Server. Some PI interfaces, in addition to using the PI API, require the use of the PI SDK.

PI Server Node

A PI Server Node is a computer on which PI Server programs are installed. The PI Server runs on the PI Server Node.

PI SMT

PI SMT refers to PI System Management Tools. PI SMT is the program that you use for configuring PI Servers. A single copy of PI SMT manages multiple PI Servers. PI SMT runs on either a PI Server Node or a PI Interface Node.

Pipc.log

The pipc.log file is the file to which OSIsoft applications write informational and error messages. When a PI interface runs, it writes to the pipc.log file. The ICU allows easy access to the pipc.log.

Point

The PI point is the basic building block for controlling data flow to and from the PI Server. For a given timestamp, a PI point holds a single value.

A PI point does not necessarily correspond to a “point” on the foreign device. For example, a single “point” on the foreign device can consist of a set point, a process value, an alarm limit, and a discrete value. These four pieces of information require four separate PI points.

Service

A Service is a Windows program that runs without user interaction. A Service continues to run after you have logged off from Windows. It has the ability to start up when the computer itself starts up.

The ICU allows you to configure a PI interface to run as a Service.

Tag (Input Tag and Output Tag)

The tag attribute of a PI point is the name of the PI point. There is a one-to-one correspondence between the name of a point and the point itself. Because of this relationship, PI System documentation uses the terms “tag” and “point” interchangeably.

Interfaces read values from a device and write these values to an Input Tag. Interfaces use an Output Tag to write a value to the device.

GE FANUC CIMPLICITY HMI Interface 65

Chapter 1.  Introduction

The PI GE FANUC CIMPLICITY HMI Interface (PI CIMPI) provides the transfer of data between the GE FANUC CIMPLICITY system, version 4.01 and higher, and the OSIsoft Plant Information (PI) System. Three versions of interface executables are shipped with the interface distribution:

PICimpi_HMI50.exe for GE Cimplicity HMI version 4.01 to 5.0

PICimpi_HMI55.exe for GE Cimplicity HMI version 5.5 to 6.01

PICimpi_HMI75.exe for Proficy HMI/SCADA Cimplicity version 7.5, 8.0 and 8.1

The interface is bi-directional. The interface reads data from a single project on one CIMPLICITY server and sends the data to the PI server. The interface can also output data to the single specified project as well. The interface may run on a CIMPLICITY Viewer node or a CIMPLICITY server node.

The interface supports two failover solutions to minimize data loss during a failure within the system architecture. The first solution, available through UniInt, provides a no data loss solution given a single point of failover. Information relating to failover operation and configuration can be found in the UniInt Failover Configuration section of this manual. The CIMPLICITY system also provides an option for failover support. In this scenario, the interface is installed on a Viewer Node which is configured to collect data from the active project on one of two CIMPLICITY servers configured for failover.

The interface obtains data from the CIMPLICITY server on an exception basis. The interface checks for new data at a configurable scan rate (default is 250ms). The user can choose to have the data time stamped in one of 3 ways; use the raw unadjusted time from the Cimplicity server, use the PI server time at which the event was received, or use the adjusted time from the Cimplicity server. If using the adjusted time from the Cimplicity server, which is the default, the PI CIMPI Interface queries the Cimplicity server for the current time and compares that with the current time from the PI server. It uses the difference between the two times to determine an offset. This offset is then used to adjust the time of the Cimplicity event to the PI time.

The interface will exit under certain situations that do not allow recovery by standard programmatic means. Because of this possibility, the PI CIMPI Interface is shipped with a separate program named WatchDog that will monitor the interface and restart the interface if it is not running. This scenario is discussed in The Principles of Operation section and the start-up command parameter /wd.

The following is a list of key features found in version 4.3.0.0 of the PI CIMPI Interface. It is the intent for OSIsoft to maintain backward compatibility with previous versions. However, there may be some features listed below that are not supported in previous interface versions. Refer to the interface manual for a specific version to verify functionality.

The interface supports communication to a single Cimplicity HMI project. Multiple projects will require multiple instances of the interface to be run.

The interface collects data from the Cimplicity HMI only by exception. Meaning Cimplicity will only send changed data to the interface. Versions 1.x and 2.x allowed for data collection by polling and event triggers. The user does not need to make any modifications to the point attributes because of this change.

This version of the interface has support for complex (array) Cimplicity inputs or outputs. A point is identified as a complex point by configuring the InstrumentTag attribute of the PI Point. Refer to the PI Point Configuration section of this manual for details on configuring complex data points.

Users can select specific PI Points to be timestamped with sub-second resolution. Points requiring sub-second resolution can be identified by setting the UserInt1 attribute of the PI Point.