OPC XML/DA Server


An OPC XML/DA Server is a web service from which an OPC XML/DA Client can get information of a
ProviewR system. A opc client can, for example, browse the object hierachy, read and write
attribute value, and subscribe to attributes.

The opc server implements the http protocol as well and is not connected to a web server. The
port number of the opc_server is set to 80, the URI for the web service is on node 'mynode' is

http://mynode

If a web server is present, this normally has allocated the port 80, and another port has to be
chosen for the opc_sever. If port 8080 is chosen, the URI will be

http://mynode:8080

Browsing

The OPC XML/DA browsing supports branches and items. The item contains a value, while the
branch is an hierarchical component without a value. There is no support for objects, so an
object has to be implemented as a branch, while an attribute is implemented as an item. Also
arrays are implemented as branches, while array elements (that is not a class) is implemented
as an item.

Threads

If the opc client uses the HoldTime and WaitTime attributes in the SubscriptionPolledRefresh
request, the opc server has to be multi threaded, that is, for every request, a new thread is
created. If the HoldTime and WaitTime is not used (as in the ProviewR opc client), all requests
can be handled in a single thread, which is less time consuming. Multithreads or not are
configured in the configuration object for the opc server. The default value is 'IfNeeded'
which turns on the multithreading for a client if HoldTime or WaitTime are detected.

Client access

To gain access to a ProviewR opc server, the ip address of the client has to be configured in
the configuration object for the opc server. Here you can also choose if the client has
ReadWrite or ReadOnly access, where ReadOnly allows the client to read and subscribe to
attribute values, while ReadWrite also is allowed to write attribute values.

Buffering of subscriptions

The server does not support buffering of subscriptions.

Configuration

The opc server is configured with a Opc_ServerConfig object that is placed in the Node
hierarchy. The configuration object will cause a server process (opc_server) to start at
ProviewR startup.