Remote Automation Solutions Guide: OpenEnterprise OPC Client RDI Reference Guide Manuals & Guides

Reference Guide
D5092 12-Dec-2007
OPC Client RDI
OPC Client RDI
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 2
OPC Client RDI
Contents
1 OPC Client RDI......................................................................................................................... 5
2 The OPC Client RDI Interface ................................................................................................. 6
2.1 Accessing the OPC Client RDI Interface ............................................................................ 6
3 The OPC Server Page.............................................................................................................. 7
3.1 File Menu ............................................................................................................................ 7
3.2 Help Menu ........................................................................................................................... 7
3.3 Database Address............................................................................................................... 7
3.4 Driver Version ..................................................................................................................... 8
3.5 Time Zone ........................................................................................................................... 8
3.6 Timestamp Conversion ....................................................................................................... 8
3.7 OPC Client RDI Driver Status ............................................................................................. 8
3.8 OPC Server Name .............................................................................................................. 8
3.9 OPC Server Prog ID............................................................................................................ 8
3.10 OPC Server Network Address ......................................................................................... 8
3.11 OPC Server OPC Version ............................................................................................... 8
3.12 OPC Server Status ..........................................................................................................9
3.13 Sub Status ....................................................................................................................... 9
3.14 Group Details Button ....................................................................................................... 9
4 The OPC Group Details Page ...............................................................................................10
4.1 Number of Groups............................................................................................................. 10
4.2 OPC Group Name............................................................................................................. 10
4.3 OPC Group Active............................................................................................................. 10
4.4 OPC Group Status ............................................................................................................ 10
4.5 Sub Status......................................................................................................................... 10
4.6 OPC Group Requested Rate ............................................................................................ 10
4.7 OPC Group Revised Rate................................................................................................. 11
4.8 Deadband.......................................................................................................................... 11
4.9 Locale................................................................................................................................ 11
4.10 Time Bias .......................................................................................................................11
4.11 Item Details Button ........................................................................................................ 11
5 The OPC Item Details Page................................................................................................... 12
5.1 Number of Items................................................................................................................ 12
5.2 Item Name......................................................................................................................... 12
5.3 Tag Id ................................................................................................................................ 12
5.4 Item Active ........................................................................................................................ 12
5.5 Item Status ........................................................................................................................ 12
5.6 Sub Status......................................................................................................................... 13
5.7 Requested Type................................................................................................................ 13
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 3
Canonical Type ................................................................................................................. 13
5.8
5.9 Access Path ...................................................................................................................... 13
5.10 Access Rights ................................................................................................................ 14
6 Status Codes.......................................................................................................................... 15
6.1 OPC Group Status Codes................................................................................................. 15
6.2 OPC Item Status Codes.................................................................................................... 16
6.3 Sub Status Codes ............................................................................................................. 17
7 OPC Quality Flags ................................................................................................................. 19
7.1 Bad Quality Flags.............................................................................................................. 19
7.2 Uncertain Quality Flags..................................................................................................... 19
7.3 Good Quality Flags ........................................................................................................... 20
8 OPC Client Configuration .....................................................................................................21
8.1 Session Manager Configuration........................................................................................ 21
8.1.1 The Session Manager Task Page .............................................................................. 21
8.1.1.1 The Program ........................................................................................................ 21
8.1.1.2 Run Program in the following folder ..................................................................... 21
8.1.1.3 Program Arguments ............................................................................................. 21
8.1.2 The Task Shutdown Page .......................................................................................... 21
8.2 Polyhedra Config File........................................................................................................ 21
8.2.1.1 Dvi_register_datum_with_values ......................................................................... 21
8.2.1.2 Dvi_triggers_on .................................................................................................... 21
OPC Client RDI
9 Database Configuration ........................................................................................................ 23
9.1 Database DVI Architecture ............................................................................................... 23
9.1.1 Driver ..........................................................................................................................23
9.1.2 Network....................................................................................................................... 23
9.1.3 Device......................................................................................................................... 23
9.1.4 Schedule..................................................................................................................... 24
9.1.5 Datum ......................................................................................................................... 24
9.1.6 Region ........................................................................................................................ 24
9.2 OPC Data Access Interface .............................................................................................. 24
9.2.1 Server ......................................................................................................................... 24
9.2.2 Group.......................................................................................................................... 24
9.2.2.1 Name.................................................................................................................... 24
9.2.2.2 Active ................................................................................................................... 25
9.2.2.3 Percent Deadband ............................................................................................... 25
9.2.2.4 Locale................................................................................................................... 25
9.2.2.5 Time Bias ............................................................................................................. 25
9.2.2.6 Requested Update Rate ...................................................................................... 25
9.2.2.7 Revised Update Rate ........................................................................................... 25
9.2.3 Item............................................................................................................................. 25
9.2.3.1 Item ID (Tag) ........................................................................................................ 25
9.2.3.2 Access Path ......................................................................................................... 25
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 4
OPC Client RDI
9.2.3.3
9.2.3.4 Requested Data Type .......................................................................................... 25
9.2.3.5 Canonical Data Type............................................................................................ 26
9.2.3.6 Value .................................................................................................................... 26
9.2.3.7 Quality ..................................................................................................................26
9.2.3.8 Timestamp ........................................................................................................... 26
9.2.3.9 Error Status .......................................................................................................... 26
9.3 Mapped Tables for OPC Client RDI .................................................................................. 26
9.3.1 Dvi_region References ............................................................................................... 27
9.3.2 Dvi_schedule ..............................................................................................................27
9.3.3 OPC Driver ................................................................................................................. 27
9.3.4 OPC Server ................................................................................................................ 27
9.3.5 OPC Device ................................................................................................................ 27
9.3.6 OPC Group ................................................................................................................. 27
9.3.7 OPC Item .................................................................................................................... 28
10 Index ....................................................................................................................................... 29
Active ................................................................................................................... 25
9.3.7.1.1 OPCItemRealAnalog ...................................................................................... 28
9.3.7.1.2 OPCItemIntegerAnalog .................................................................................. 28
9.3.7.1.3 OPCItemDigital ............................................................................................... 28
9.3.7.1.4 OPCItemString................................................................................................ 28
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 5

OPC Client RDI

1 OPC Client RDI
OPC (Object Linking and Embedding for Process Control) is a client/server model intended to provide greater interoperability between automation/control applications, field devices and business/office applications in the process control industry.
OPC Server applications communicate directly with field devices, whilst OPC Clients are able to retrieve that information from the OPC Server. In terms of OpenEnterprise this architecture is best illustrated in the diagram below.
The OPC Client RDI provides a means of collecting data from OPC Servers and inserting the data into an OpenEnterprise database. The OpenEnterprise OPC Client RDI is capable of communicating with several OPC Servers concurrently, but only connects to one OpenEnterprise database at a time.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 6
OPC Client RDI
2 The OPC Client RDI Interface
The OPC Client RDI interface provides the user with three pages of information which display general and status information for configured OPC Servers, Groups and Items.

2.1 Accessing the OPC Client RDI Interface

The OPC Client RDI interface can be set to be invisible if the 'Visible on the Desktop' box is left unchecked on the Settings page for the task. However, if this field is checked, then the interface will appear as a minimized icon on the Windows® Start bar when the OpenEnterprise session is run.
To edit the OPC Client RDI task within the Session Manager, select the task from the Session Manager's Task List, select Stop from the context menu to stop the task. Then select the Properties item from the same context menu. See the Session Manager Help for more information.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 7
OPC Client RDI
3 The OPC Server Page
This page displays information about the OPC Servers that the OPC Client RDI is currently set up to connect to.
3.1 File Menu
The File menu provides only one option, which is to Exit the OPC Client RDI.
3.2 Help Menu
The Help menu provides an option to open this help file, and also to view the About box, which provides information on the application version and build and also Bristol contact details.
3.3 Database Address
This is the TCP address of the OPC Client RDI driver as defined in the Services file, by default found in the 'C:\Winnt\System32\Drivers\etc' directory.
An example entry in this file for the OPC Client RDI would be:-
opcclientrdi 11006/tcp OPCCLIENTRDI
The format being <service name> <port number>/<protocol> [aliases...] [#<comment>].
The OPC Client RDI's service name is stored in the address attribute of the applicable driver in the OPCDriver table entry of the OpenEnterprise database.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 8
OPC Client RDI
3.4 Driver Version
This is the OPC Client version number. It does not represent the OPC Data Access standard.
3.5 Time Zone
The Time Zone setting of the OPC Client RDI, as sourced from the OPC Driver table. Because the OPC standard is vague about how individual OPC Servers should format timestamps, special consideration should be given as to whether the OPCDriver should convert timestamps to UTC.
3.6 Timestamp Conversion
The OpenEnterprise database requires that all timestamp values are stored in UTC. However the OPC standard is vague about how individual OPC Servers should format timestamps, and from experience on site it has been seen that some OPC Servers report timestamps in local time, while others report timestamps in UTC. The OPC Client RDI can handle both of these situations, as detailed below.
If the OPC Server is communicating with an OPC Server that does report timestamps in local time, then the OPC Client RDI must be configured to convert those timestamps into UTC before they are inserted into the database. This is achieved by setting the OPCDriver attribute ConvertTimeStamps to TRUE. (which is the default value for this attribute) and ensuring that the timezone attribute of this table is set to the same timezone as that with which the OPC Server is reporting timestamps. These values can then be used in conjunction with any time bias that may be defined to correctly convert the timestamps into UTC before they are inserted into the database.
If the OPC Server returns timestamps in UTC then no time conversion is required, and in this case the ConvertTimestamps attribute value must be set to FALSE.

3.7 OPC Client RDI Driver Status

A zero means the driver is working properly. Non-zero means there are problems.

3.8 OPC Server Name

The name of the OPC Server. It is sourced from the networkame attribute of the opcserver table.

3.9 OPC Server Prog ID

The program id of the OPC Server as sourced from the OPCServer attribute of the OPCServer table.

3.10 OPC Server Network Address

This displays the computer on which the OPC Server is running. If the Server is running on the local machine, this field will say 'Local'.

3.11 OPC Server OPC Version

This value indicates the Data Access standard to be used when communicating with the OPC Server. This will be listed on the dialog as either 1.0 (corresponding to a value of 0 in the opcversion attribute of the OPCServer table), or 2.04 (corresponding to a value of 1 in the opcversion attribute of the OPCServer table).
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 9
OPC Client RDI

3.12 OPC Server Status

A zero value means there are no errors. Anything else is an error. The possible status codes and their meaning are described in the OPC Server Status Codes topic. Click the link below to go to this topic now.
3.13 Sub Status
The SubStatus attribute can hold any error returned either by COM or by a specific OPC Server.

3.14 Group Details Button

When an OPC Server is selected from the list, this button becomes enabled. Clicking the button then opens the OPC Group Details Page, which displays OPC Groups that have been configured for the selected OPC Server. Click on the link below to view help for this page.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 10
OPC Client RDI
4 The OPC Group Details Page
This page displays details about the OPC Groups which have been configured for the selected OPC Server.

4.1 Number of Groups

The number of Groups configured for the selected OPC Server

4.2 OPC Group Name

The name of each configured OPC group sourced from the name attribute of the opcgroup table.
4.3 OPC Group Active
This value displays True if the Group is currently active, False if not. If a Group is marked as inactive, then the OPC item values associated with it will not be reported to the OPC Client RDI.

4.4 OPC Group Status

A zero value means there are no errors. Anything else is an error. The possible status codes and their meaning are described in the OPC Group Status Codes topic. Click the link below to go to this topic now.
4.5 Sub Status
The SubStatus attribute can hold any error returned either by COM or by a specific OPC Server.

4.6 OPC Group Requested Rate

The period, in milliseconds, at which the OPC Client RDI requires any changes in data or quality, for OPC Items within the group, to be reported. This value is sourced from the requestedupdaterate attribute of the opcgroup table.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 11
OPC Client RDI

4.7 OPC Group Revised Rate

The period, in milliseconds, at which the OPC Server is able to supply changes in data or quality for the OPC Items within the group. The value is sourced from the revisedupdaterate attribute of the opcgroup table.
4.8 Deadband
Applicable only to real analogue OPC Items within the Group and specifies the percentage change in value within the update period which is required for a data value change to be reported to the OPC Client RDI. The value is sourced from the percentdeadband attribute of the opcgroup table.
4.9 Locale
Indicates the locale in which data for this group should be returned. The default value of 2048 indicates that data should be retuned using the default system locale.
The formatting of numbers, dates, language or currency depend on the Locale. It is sourced from the locale attribute of the opcgroup table.
4.10 Time Bias
Used to indicate a difference in time zone between the device(s) from which the data for this group was collected, and that in which the OPC Client and OPC Server are located.
This is ignored by the OPC Server but is used by the OPC Client RDI to provide correct time stamp conversion to UTC for all OPC Items within the group.

This is on top of any time zone and DST conversion defined by the setting of the time zone attributes in the OPCDriver table. The value is sourced from the timebias attribute of the opcgroup table.

4.11 Item Details Button

When an OPC Group is selected from the list, this button becomes enabled. Clicking the button then opens the OPC Item Details Page, which displays OPC Items that have been configured for the selected OPC Group. Click on the link below to view help for this page.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 12
OPC Client RDI
5 The OPC Item Details Page
This page displays details about the OPC Items that have been configured for the selected OPC Group. for help on each feature of the page.
5.1 Number of Items
The number of items in the selected Group.
5.2 Item Name
This is the unique name of the signal as it appears in the Signal table. The value is sourced from the name attribute of the relevant OPCItem table.
5.3 Tag Id
The Tag Id uniquely identifies the OPC Item to the OPC Server. It is sourced from the datumaddress attribute of the relevant OPCItem table.
5.4 Item Active
This value displays True if the Item is currently active, False if not. If the item is inactive, then changes in value will not be reported to the OPC Client RDI.
5.5 Item Status
A zero value means there are no errors. Anything else is an error. The possible status codes and their meaning are described in the OPC Item Status Codes topic. Click the link below to go to this topic now.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 13
OPC Client RDI
5.6 Sub Status
The SubStatus attribute can hold any error returned either by COM or by a specific OPC Server.
5.7 Requested Type
This is the data format with which the OPC Client RDI will request the value for the item from the OPC Server. It is sourced from the opcrequesteddatatype attribute of the relevant OPCItem table. Code numbers for the Data Types are given below.
Code
0 Native format - i.e. the data type of the OPC Item as
defined by the OPC Server
1 Single Byte Integer Value
2 Two Byte Integer Value
3 Four Byte Integer Value
4 Four Byte Floating-Point Value
5 Eight Byte Floating-Point Value
8 A String Value.
11 A Boolean Value
If the user is unsure as to the data type of an OPC Item, the requested data type should be set to 0.
Data Type
5.8 Canonical Type
This is the data format with which the OPC Server will actually return the data to the OPC Client. It is sourced from the opccanonicaldatatype attribute of the relevant OPCItem table. Code numbers for the Data Types are given below.
Code
Data Type
1 Single Byte Integer Value
2 Two Byte Integer Value
3 Four Byte Integer Value
4 Four Byte Floating-Point Value
5 Eight Byte Floating-Point Value
8 A String Value.
11 A Boolean Value
5.9 Access Path
An optional attribute, which is used to specify to the OPC Server a preferred access path by which the value for the OPC Item should be obtained.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 14
OPC Client RDI
5.10 Access Rights
This displays the access rights applicable to this item, as returned by the OPC Server, taken from the opcaccessrights attribute of the relevant OPCItem table.
Code
RW
W
RW
Value as seen in database Meaning
1 Readable
2 Writable
3 Read and Writeable
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
eturned
adding group to serve
D5092 12-Dec-2007 - Page 15
OPC Client RDI
6 Status Codes
OPC Server status and sub status codes are displayed on the OPC Server Page of the OPC Client RDI. The following values apply to the Status attribute of the OPCServer table.
Code Number
-1 Failed to initialise COM. A fatal error that would prevent the OPC Client RDI from functioning.
-2 The Program Id of the OPC Server could not be resolved.
-3 Unable to start the OPC Server. The value of the SubStatus attribute should provide additional information as to the cause. This problem is most likely to happen when the OPC Client RDI and target OPC Server(s) are located remotely to each other.
-4 OPC Server does not support the IOPCCommon Interface. The most common reason for this would be that the OPC Server doesn't the support the Data Access 2.04 standard, but that the associated OPCServer table entry indicates that the Data Access 2.04 interfaces should be used for communication. This will generally indicate that no data can be obtained from the OPC Server.
-5 Failed to update Locale. This is a non-fatal error status.
-6 Attempting to restart OPC Server. Informational error indicating that the OPC Server is not available, but that periodic reconnection attempts are being made, as per the configuration of the OPCServer table entry.
-7 Unable to start the restart thread. An internal error, which should only happen if system resources were exhausted.
-8 Unable to start status timeout thread. An Internal error, which should only happen if system resources were exhausted.
-9 Unable to start status check thread. An Internal error, which should only happen if system resources where exhausted.
-10 Indicates that the OPC Client RDI is still awaiting an activate message from the database. The most likely reason for this is that the OPC Client RDI has connected to the standby.
Explanation

6.1 OPC Group Status Codes

The Group Details page displays status and sub status codes for OPC Groups. The following values apply to the Status attribute of the OPCGroup table.
Code Number
-1 Group Initialisation failed. There are various reasons for this, not least that the
OPC Server is not available, or that the wrong OPC standard is being used to communicate with that server, which would result in an E_NO_INTERFACE value for the SubStatus.
-2 Unable to Add the OPC Group to the Server. The SubStatus will generally
provide an indication of the reason, e.g. a duplicate group name has been defined, or the OPC Server hasn't initialised.
-3 IUnknown Pointer not r
Explanation
when
r. This would
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 16
indicate a problem in the configuration of the OPC Server and/or the definition of the OPCGroup entry. The SubStatus attribute should be consulted for further information.
-4 Unable to set up a callback sink with the OPC Server, meaning that
unsolicited data cannot be received.
-5 Unable to obtain a requested interface. Most likely to occur if the associated
OPC Server doesn't support the configured OPC Data Access standard.
-6 Unable to create an OPC Group instance. This would be as a result of an
internal COM error, and is unlikely to occur.
-7 Failed to update one of the following OPC Group
properties.RequestedUpdateRate, Active, PercentDeadBand, Locale, or TimeBias.
-8 Failed to update OPC Group name. This would occur if the group name is
already defined within the OPC Server generally as a result of another OPC Client connection to that server.
-9 An attempt to refresh the items within the group failed. A common reason for
this would be that the Group is inactive or that no items within the Group are currently active.
-10 Indicates that the OPC Client RDI is still awaiting an activate message from
the database. The most likely reason for this is that the OPC Client RDI has connected to the standby.
-11 Unable to start the Add Items thread. An Internal error, which should only
happen if system resources where exhausted.
OPC Client RDI
6.2 OPC Item Status Codes
The Item Details page displays status and sub status codes for OPC Items. The following values apply to the Status attribute of the OPC Item table.
Code
Number
-1 OPC Server reported an error related to the OPC Item. The SubStatus attribute
should be consulted for further information.
-2 Unable to add OPC Item to the designated OPC Group. The Substatus attribute
value will indicate the cause of this error, but common causes are that the OPC Tag is invalid and or that the requested data type is invalid for the tag.
-3 Parent Group does not exist - (an internal error that is unlikely to occur).
-4 This will occur if an attempt is made to change the requested data type for the
OPC Item to an unsupported type for the associated tag. The SubStatus attribute will generally show the value OPC_E_BADTYPE to reflect this, although other errors are possible.
-5 Unable to remove the Item from the Group - (only generated in conjunction with
an attempt to move an OPC Item to another Group).
-6 Target Group does not exist. Unlikely to occur due to referential integrity checks
in the database, i.e. an item can't be assigned to a group that doesn't exist!
-7 Failed to update Active property of the OPC Item. The SubStatus attribute
should be consulted for the reason for the failure.
Explanation
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
cates that the OPC Server doesn't
D5092 12-Dec-2007 - Page 17
-8 An attempt to update an OPC Item value failed. See the SubStatus attribute for
further information as to the cause. The most common cause would be that the OPC Item is not writable, in which case the SubStatus value would be OPC_E_BADRIGHTS.
-9 A requested refresh for the OPC Item failed. See the SubStatus attribute value
for further details.
-10 Indicates that the OPC Client RDI is still awaiting an activate message from the
database. The most likely reason for this is that the OPC Client RDI has connected to the standby.
OPC Client RDI

6.3 Sub Status Codes

Because the SubStatus attribute can hold any error returned either by COM or by a specific OPC Server it is not possible to provide a full listing of all values. The following table highlights the most common errors that might be encountered. All sub status values are given in hexadecimal format, as displayed on the OPC Client dialogue.
Code Number
S_FALSE(0x1) Indicates that although the action
completed, there were errors when dealing with that action. For instance if 10 items are added to an OPC Group in the same call, and one of those items were invalid, the OPC Group SubStatus attribute would show S_FALSE
E_FAIL(0x80004005) Unspecified error. Generally something
catastrophic within the associated OPC Server.
E_OUTOFMEMORY(0x8007000E) The OPC Client RDI or the OPC Server
was unable to complete the action due to a lack of available memory.
E_INVALIDARG(0x80070057) An argument used in a call to the OPC
Server is invalid.
DISP_E_TYPEMISMATCH(0x80020005) Generally occurs because an OPC Item
has been configured with an invalid requested data type, e.g. VT_BOOL for an OPCItemString.
OPC_E_DUPLICATE_NAME(0xC004000B) This error should never occur, but would
indicate that a group of the same name is already registered with the applicable OPC Server.
OPC_S_UNSUPPORTEDRATE(0x4000D) This is a non-fatal status code indicating
that the OPC Server is unable to supply data at the rate specified by the RequestedDataRate. The RevisedUpdateRate attribute can be consulted for the update rate that the OPC Server can support.
E_NOINTERFACE(0x80004002) Indi
Explanation
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 18
support the requested method. This is most likely to occur if the OPC Server doesn't support the data access standard defined by within the OPCVersion attribute of the associated OPCServer table entry.
CONNECT_E_NOCONNECTION(0x80004200) Indicates that an asynchronous request
has been made, but that no callback sink is available to report the results of that request back to the client.
OPC_E_UNKNOWNITEMID(0xC0040007) Indicates that the associated OPC Server
has been unable to resolve the OPC Item, and that no data is therefore available. E.g. a tag may be defined that is syntactically correct, but which can't be obtained by the OPC Server.
OPC_E_INVALIDITEMID(0xC0040008) Indicates that the associated OPC Server
deems the tag format of the OPC Item to be invalid.
OPC_E_UNKNOWNPATH(0xC004000A) The access path defined for the OPC
Item, is not known to the OPC Server.
OPC_E_BADTYPE(0xC0040004) The data type requested for the OPC
Item (i.e. the value of the requesteddataatype attribute), is invalid.
OPC_S_CLAMP(0x4000E) Associated with a write request and
indicates that the value was updated, but was clamped.
OPC_E_RANGE(0xC004000B) Associated with a write request and
indicates that the value was out of range.
OPC_E_BADRIGHTS(0xC0040006) Indicates either that an attempt was made
to write to a non writable item, or that a read request was made on a non readable item.
OPC Client RDI
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 19
OPC Client RDI
7 OPC Quality Flags
The opcquality attribute of each OPC Item indicates the quality state for an item's data value. This value can provide very useful diagnostic information. The values that can be returned for the opcquality attribute belong to one of three OPC quality states: -
1. Bad Quality
2. Uncertain Quality
3. Good Quality

7.1 Bad Quality Flags

The opcquality attribute of each OPC Item indicates the quality state for an item's data value. This value can provide very useful diagnostic information. The following table lists all values which could be returned for this field when the OPC quality is bad.
OPCQuality Value
0 The value is bad but no specific reason is known 4 There is some server specific problem with the configuration. For
example the item is question has been deleted from the configuration.
8 The input is required to be logically connected to something but is
not. This quality may reflect that no value is available at this time, for reasons like the value may have not been provided by the data
source. 12 A device failure has been detected 16 A sensor failure had been detected (the ’Limits’ field can provide
additional diagnostic information in some situations.) 20 Communications have failed. However, the last known value is
available. Note that the ‘age’ of the value may be determined from
the TIMESTAMP in the OPCITEMSTATE. 24 Communications have failed. There is no last known value is
available. 28 The block is off scan or otherwise locked This quality is also used
when the active state of the item or the group containing the item is
InActive.
Description
7.2 Uncertain Quality Flags
The opcquality attribute of each OPC Item indicates the quality state for an item's data value. This value can provide very useful diagnostic information. The following table lists all values which could be returned for this field when the OPC quality is uncertain.
OPCQuality Value
64 There is no specific reason why the value is uncertain. 68 Whatever was writing this value has stopped doing so. The returned
Description
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 20
value should be regarded as ‘stale’. Note that this differs from a BAD
value with Substatus 5 (Last Known Value). That status is associated
specifically with a detectable communications error on a ‘fetched’
value. This error is associated with the failure of some external
source to ‘put’ something into the value within an acceptable period
of time. Note that the ‘age’ of the value can be determined from the
TIMESTAMP in OPCITEMSTATE. 90 Either the value has ‘pegged’ at one of the sensor limits (in which
case the limit field should be set to 1 or 2) or the sensor is otherwise
known to be out of calibration via some form of internal diagnostics
(in which case the limit field should be 0). 94 The returned value is outside the limits defined for this parameter.
Note that in this case (per the Fieldbus Specification) the ‘Limits’ field
indicates which limit has been exceeded but does NOT necessarily
imply that the value cannot move farther out of range. 98 The value is derived from multiple sources and has less than the
required number of Good sources.
OPC Client RDI
7.3 Good Quality Flags
The opcquality attribute of each OPC Item indicates the quality state for an item's data value. This value can provide very useful diagnostic information. The following table lists all values which could be returned for this field when the OPC quality is good.
OPCQuality Value
192 The value is good. There are no special conditions 204 The value has been Overridden. Typically this is means the input has
been disconnected and a manually entered value has been ‘forced’.
Description
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 21
OPC Client RDI
8 OPC Client Configuration
There are three aspects to configuration of the OPC Client RDI: -
1. Start up configuration - Session Manager configuration
2. Start up configuration - Poly.cfg file
3. Database configuration

8.1 Session Manager Configuration

To edit the OPC Client RDI task within the Session Manager, select the task from the Session Manager's Task List, select Stop from the context menu to stop the task. Then select the Properties item from the same context menu. See the Session Manager Help for more information.

8.1.1 The Session Manager Task Page

On the Task page of the wizard fill in the following fields.
8.1.1.1 The Program
The full path and filename of the OpenEnterprise OPC Client RDI application is C:\Program Files\Bristol\OpenEnterprise\bin\OEOPCClientRDI.exe. Use the browse button if you are uncertain.
8.1.1.2 Run Program in the following folder
This will be the Data directory of the OpenEnterprise project.
8.1.1.3 Program Arguments
This should be the switch /r followed by a space, followed by the TCP/IP service name of the OPC Client RDI - e.g. /r opcclientrdi. No quotes are necessary. This is the most important value for the OPC Client RDI, because it gives the OpenEnterprise Database a connection to the OPC Client RDI .

8.1.2 The Task Shutdown Page

This value should be set to _NULL, which is the default.
The other values for Session Tasks can also be entered on this key, however the ones above are the most important. See the Session Manager help file for further information on the other key values, and more information on configuring the Session Manager.
8.2 Polyhedra Config File
There are two resources within the Poly.cfg file that should be checked before running the OpenEnterprise OPC Client RDI.
8.2.1.1 Dvi_register_datum_with_values
This resource should be set to TRUE.
8.2.1.2 Dvi_triggers_on
This should be set to FALSE.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 22
Refer to the Session Manager help file for more information on the Poly.cfg file resources used by the database.
OPC Client RDI
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 23
OPC Client RDI
9 Database Configuration
The elements of the OpenEnterprise database DeVice Interface (DVI) table architecture and the OPC Data Access Interface were mapped with each to provide complete compatibility. The following topics explain how this was done.
9.1 Database DVI Architecture
These tables are structured to model the relations between the RDI drivers and devices (RTU/PLCs) in the field. An entity diagram for these relations would look like this: -
The base tables to which these entities are mapped are generally derived from to provide information and management functionality specific to the RDI.
9.1.1 Driver
A Driver is the root node of the hierarchy and generally relates to a specific RDI. This entity is mapped to the following tables of the OpenEnterprise database:-
dvi_driver
dvi_remote_driver
9.1.2 Network
A Network describes a collection of PLC/RTU's. It might be mapped to a particular dedicated communications path for instance. This entity is mapped to the following table of the OpenEnterprise database:-
dvi_network
9.1.3 Device
A Device, as the name implies generally maps to an individual PLC or RTU. This entity is mapped to the following table of the OpenEnterprise database:-
dvi_device
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 24
OPC Client RDI
9.1.4 Schedule
A Schedule provides a mechanism for grouping datum's into collection groups. This entity is mapped to the following table of the OpenEnterprise database:-
dvi_schedule
9.1.5 Datum
A Datum generally represents a physical I/O point within a PLC or RTU. This entity is mapped to the following table of the OpenEnterprise database:-
dvi_datum
9.1.6 Region
A Region provides a mechanism for defining collections of datum's. For instance, analogue and digital datum's might be associated with different regions. This entity is mapped to the following table of the OpenEnterprise database:-
dvi_region

9.2 OPC Data Access Interface

This is a three-tiered architecture, constituting OPC Server, OPC Group and OPC Item levels. The following relationship diagram illustrates the architecture.
9.2.1 Server
An OPC Server object is created for each OPC Client that requires information, and is used to manage the OPC Client's data requirements. Each OPC Server is generally only able to connect to a certain type of RTU or PLC and collect data.
9.2.2 Group
An OPC Group is used to define a collection of OPC Items, and how the value and quality of those items should be reported to the OPC Client. The properties of an OPC Group are as follows.
9.2.2.1 Name
This is the name of the OPC Group. It must be unique to the OPC Server to which the group has been added.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 25
9.2.2.2 Active
Indicates whether the OPC Group is currently active, and therefore whether data is required from that Group.
9.2.2.3 Percent Deadband
Provides a percentage deadband to be applied to any analogue items defined within the Group when evaluating changes of value.
9.2.2.4 Locale
This value specifies the language to be used by the OPC Server when returning values as text for operations on this OPC Group.
9.2.2.5 Time Bias
This allows a time bias to be applied to the timestamps reported by the OPC Server. It is generally used to provide support for physical devices in different time zones. It does NOT support DST weighting.
9.2.2.6 Requested Update Rate
OPC Client RDI
This is the maximum rate at which the group expects changes in value or quality of OPC Items within the group to be reported.
9.2.2.7 Revised Update Rate
This is the rate at which the OPC Server is able to provide changes in value or quality for OPC Items within the group.
9.2.3 Item
An OPC Item defines a specific point for which value and quality data is required. The following properties can be defined for an OPC Item.
9.2.3.1 Item ID (Tag)
Provides the OPC Tag that identifies to the appropriate OPC Server the physical I/O point to which the OPC Item relates.
9.2.3.2 Access Path
Provides an access path that the OPC Server should use to obtain the value associated with the OPC Item.
9.2.3.3 Active
Indicates whether the OPC Item is currently active, and therefore whether changes in value or quality for the item are to be reported by the OPC Server.
9.2.3.4 Requested Data Type
This is the data format with which the OPC Client RDI will request the value for the item from the OPC Server.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 26
9.2.3.5 Canonical Data Type
The data type with which the OPC Server stores and manages the value for the OPC Item
9.2.3.6 Value
This is simply the value of the OPC Item.
9.2.3.7 Quality
This is the OPC Quality of the OPC Item. See the OPC Quality Flags sectionpage for help on the diagnostic information this field could provide.
9.2.3.8 Timestamp
The timestamp indicating the last change of value or quality for the OPC Item
9.2.3.9 Error Status
An error status used to provide additional information about any problems with the OPC Item. For instance that the Item ID is invalid, or the requested data type is not suitable.
OPC Client RDI

9.3 Mapped Tables for OPC Client RDI

In order for the OPC Client RDI to connect to and obtain data from an OPC Server it needs to know: -
The OPC Server object that is to connect to and retrieve data from.
The OPC Group objects that it is interested in.
The OPC Item objects that are in these groups.
These OPC objects need to be mapped onto the current OpenEnterprise Database DVI objects to maintain the integrity of the database. In doing this, the concept of an OPC Device has been added to the OPC Data Access model. The resultant OPC Client Schema definition is shown as an entity relation chart below.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 27
OPC Client RDI
9.3.1 Dvi_region References
The dvi_region table contains entries relating to each of the OPCItem tables, as well as the OPCGroup table. These references are used to register the OPC Client RDI with the columns of interest within those tables.
9.3.2 Dvi_schedule
This table is not used within the OPC Client RDI Schema definition.
9.3.3 OPC Driver
The OPCDriver table is derived from the standard dvi_remote_driver table. For every separate OPC Client RDI to be used on a system, an entry will exist within this table.
The main purpose of this table is to indicate the TCP/IP socket through which the OPC Client RDI will communicate with the OpenEnterprise database.
9.3.4 OPC Server
The OPCServer table is derived from the standard dvi_network table. Each entry within this table will define a specific OPC Server with which the OPC Client RDI will communicate.
The definition and relationship between the OPCDriver and OPCServer tables allows scalability in how the OPC Client RDI is used.
For instance, a single OPCDriver instance might have several OPCServer instances associated with it. This would indicate that the single OPC Client RDI was expected to communicate with several distinct OPC Servers.
Alternatively by providing a one to one relationship between OPCDriver and OPCServer table entries this would indicate that multiple OPC Client RDI's are to be invoked, each communicating with a single OPC Server.
TheOPCServer table provides the ability for the OPC Client RDI to determine the physical location of a named OPC Server.
9.3.5 OPC Device
The OPCDevice table is derived from the dvi_device table. Each entry within this table will map to a specific field device from which data is being requested via an OPC Server.
Signals sourced from the same device can be grouped into separate OPC Groups.
9.3.6 OPC Group
An OPC Group defines how the value and quality of a collection of OPC Items are to be supplied to the OPC Client. It does NOT imply anything about how the OPC Server actually obtains the data from the field devices.
The OPCGroup Table is derived from dvi_datum, and will provide similar functionality to that used by the Network3000 RDI to provide template collection.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 28
The main difference is that the OPCGroup instance will not itself maintain lists of those OPC Items within the group. Instead it is OPC Items themselves that dictate the OPC Group to which they belong.
As dvi_datum entries reference specific dvi_device entries, it is not possible to associate signals from different physical devices in the same OPC Group.
OPC Client RDI
9.3.7 OPC Item
The OPC Item part of the OPC entity relationship is split into four tables. These are derived from the specific signal tables which they relate to (which are derived from dvi_datum). There are four OPC Item tables, one for each of the major data types supported by OpenEnterprise Databases.
9.3.7.1.1 OPCItemRealAnalog
This table is derived from RealAnalog, and used to store OPC Items whose value is any of the supported floating point formats.
9.3.7.1.2 OPCItemIntegerAnalog
This table is derived from IntegerAnalog and used to store OPC Items whose value is any of the supported Integer formats.
9.3.7.1.3 OPCItemDigital
This table is derived from Digital and is used to store OPC Items that request the value in boolean format.
9.3.7.1.4 OPCItemString
This table is derived from StringSignal and is used to store OPC Items that request the value as a string.
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007 - Page 29
OPC Client RDI
10 Index
A
Access Path .............................................. 15
Access Rights ........................................... 15
Active......................................................... 13
C
Canonical Type ......................................... 14
Configuration Overview ............................. 27
D
Database Address....................................... 5
Database Configuration ............................ 29
Database DVI Architecture........................ 29
Datum........................................................ 30
Deadband.................................................. 10
Design Issues............................................ 29
Details Button ............................................ 11
Device ....................................................... 30
Driver......................................................... 29
Driver Version ............................................. 6
G
Group ........................................................ 31
Group Details Button ................................... 7
Groups
Number .................................................... 9
Groups......................................................... 9
H
Help Menu ................................................... 5
I
Items
Number .................................................. 13
Items.......................................................... 13
L
Locale........................................................ 10
M
Mapped Tables
OPC Client RDI ..................................... 33
Mapped Tables ......................................... 33
Mapping..................................................... 29
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
N
Name .........................................................13
Network......................................................30
Number
Groups .....................................................9
Items ......................................................13
Number ..................................................9, 13
O
OPC Client RDI
Mapped Tables ......................................33
OPC Client RDI..........................................33
OPC Client RDI Driver Status......................6
OPC Client RDI Interface ............................3
OPC Data Access Interface.......................30
OPC Device ...............................................35
OPC Driver ................................................34
OPC Group ................................................35
OPC Group Active .......................................9
OPC Group Details Page ............................9
OPC Group Name .......................................9
OPC Group Requested Rate .....................10
OPC Group Revised Rate .........................10
OPC Group Status.......................................9
OPC Group Status Codes .........................17
OPC Item ...................................................35
OPC Item Details Page .............................13
OPC Item Status Codes ............................18
OPC Server ...............................................34
OPC Server Name.......................................6
OPC Server Network Address .....................7
OPC Server OPC Version ...........................7
OPC Server Prog ID ....................................7
OPC Server Status ......................................7
OPC Server Status Codes.........................17
OPC Servers Page ......................................5
Overview......................................................1
P
Polyhedra Config File ................................28
R
Region .......................................................30
Reference Guide
D5092 12-Dec-2007 - Page 30
Requested Type ........................................ 14
S
Schedule ................................................... 30
Server........................................................ 31
Session Manager Configuration................ 27
Status ........................................................ 14
Sub Status....................................... 7, 10, 14
Sub Status Codes ..................................... 19
T
Tag Id ........................................................ 13
Time Bias .................................................. 10
Time Zone ................................................... 6
OPC Client RDI
Remote Automation Solutions
Website: www.EmersonProcess.com/Remote
Reference Guide
D5092 12-Dec-2007
NOTICE
Remote Automation Solutions (“RAS”), division of Emerson Process Management shall not be liable for technical or editorial errors in this manual or omissions from this manual. RAS MAKES NO WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING TH E IMPLIED WARRANTIES OF MERCHANTABILITY AND F ITNESS FOR A PARTICULAR PURPOSE W ITH RESPECT TO THIS MANUAL AND, I N NO EVENT SHALL RAS BE LIABLE FOR ANY INCID ENTAL, PUNITIVE, SPECIAL OR CONSEQUENTIAL DAMAGES INCLUDING, BUT NOT LIMITED TO, LOSS OF PRODUCTION, LOSS OF PROFITS, LOSS OF REVENUE OR USE AND COSTS INCURRED INLCUDING WITHOUT LIMITATION FOR CAPITAL, FUEL AND POW ER, AND CLAIMS OF THIRD PARTIES.
Bristol, Inc., Bristol Babcock Ltd, Bristol Canada, BBI SA de CV and the Flow Computer Division are wholly owned subsidiaries of Emerson Electric Co. doing business as Remote Automation Solutions (“RAS”), a division of Emerson Process Management. ROC, FloBoss, ROCLINK, Bristol, Bristol Babcock, ControlWave, TeleFlow and Helicoid are trademarks of RAS. AMS, PlantWeb and the PlantWeb logo are marks of Emerson Electric Co. The Emerson logo is a trademark and service mark of the Emerson Electric Co. All other trademarks are property of their respective owners.
The contents of this publication are presented for informational purposes only. While every effort has been made to ensure informational accuracy, they are not to be construed as warranties or guarantees, express or implied, regarding the products or services described herein or their use or applicability. RAS reserves the right to modify or improve the designs or specifications of such products at any time without notice. All sales are governed by RAS’ terms and conditions which are available upon request.
RAS does not assume responsibility for the selection, use or maintenance of any product. Responsibility for proper selection, use and maintenance of any RAS product remains solely with the purchaser and end-user.
Engineered and supported by:
Remote Automation Solutions,
Bristol Babcock Ltd. Blackpole Road, Worcester, WR3 8YB, UK
Reg office: 2nd Floor, Accurist House, 44 Baker Street, London, W1U 7AL
Registered in England and Wales, Reg No. 2580226
VAT Reg No. GB 880 9839 67
OPC Client RDI
Emerson Process Management Remote Automation Solutions
1100 Buckingham St Watertown, CT 06795 T 1 (860) 945 2200 F 1 (860) 945 2278 www.EmersonProcess.com/Remote binfo@EmersonProcess.com
© 2007 Remote Automation Solutions, division of Emerson Process Management. All rights reserved.
Emerson Process Management Remote Automation Solutions
Blackpole Road Worcester, WR3 8YB T 44 (0) 1905 856848 F 44 (0) 1905 856930 www.EmersonProcess.com/Remote oedsupport@EmersonProcess.com
Loading...