DIM Interface
Introduction
The DIMIntProc class is an alternative to the DSCIntProc class. It provides no trending and alarming but makes all "tag values" available via the DIM protocol (
see DIM). In addition, it makes some events of created objects available as DIM commands. The DIMIntProc class can be used to partly replace the DSCIntProc class. On the one hand, the DIMIntProc class is restricted, since it does not provide SCADA functionality or OPC connectivity. On the other hand, the DIMIntProc class provides the link to the DIM communication layer.
It is recommended, that all CS systems run a process "DIMInterface" that is launched via the "SuperProc".
Principle
The DIMIntProc class does two things. There must be at maximum one object of the DIMIntProc class per execution system. The name of the object is fixed and "DIMInterface" by convention. All DIM services and commands are created on the fly. A configuration similar to the "scf" file of the
DSC module is not required.
Trending and alarming
For "trending" and "alarming", status values and error message are sent via events to an DIMIntProc object. These values are then published as DIM services. Thus, the DIMIntProc class provides a DIM server. The DIM services can be accessed remotely by DIM clients. The values are only published, no SCADA treatment is done with the values. Only a simple console pops up and displays messages and errors for debugging purposes.
Event interface
Once an object is made known to the DIMInterface, the DIMInterface queries the object for its methods and events (see
Class Documentation -> BaseProcess class). If a method has only one parameter that may be of type double, integer, unsigned integer, boolean or string, a DIM command is published for that method. Once the DIMInterface receives that command from one of its subscribed clients, the DIMInterface sends the corresponding event to the object.
Installation
The DIMIntProc class is part of the CS framework. Three properties can be configured via the database.
- "Path for tag array" (Special0): This allows for persistency of service names and objects that have registered to receive an event, once the value of that service changes. Since the DIMInterface is one of the first objects to be created and one of the last objects to be destroyed, this parameter is not of great importance.
- "Prefix nodename" (Special1): By default (=1), all DIM Services have the following naming convention: NODENAME/OBJECTNAME_TAGNAME. The "NODENAME/" is suppressed, if this value is set to "0".
- "Max length of string services" (Special2): Since the DIMIntProc is a general tool for generic creation of DIM services, it does not know the maximum string length of each individual service of type string. As a result, all string services have the same length. The length can be adjusted by this parameter.
Download and Documentation
The DIMIntProc class is included in the distribution of CS. However, it requires that DIM has been installed and downloaded. DIM has been developed at CERN. DIM is documented and can be downloaded from the
DIM web site.
--
DietrichBeck - 06 Jul 2005