next up previous contents
Next: IGUANA Gateway Services: Up: The IGUANA Gateway Previous: The IGUANA Gateway   Contents

Representation of Fieldbus Data in the IGUANA Gateway

The basic idea of the IGUANA gateway is to represent a variety of different fieldbus systems with one unified data model. The basic element of this model is a ``datapoint'', which represents a piece of information. Every datapoint is connected to a fieldbus node, which is connected to a fieldbus. Moreover, every fieldbus is connected to a FAN daemon in the IGUANA gateway. This scheme is depicted in figure 38. A datapoint can also be indexed, which means that it contains a set of values87.

Figure 38: Fieldbus Nodes and Datapoints

The most important information of a datapoint is its value, such as a temperature of a sensor, or the status of a switch. In addition, it contains properties of the datapoint, such as its FAN-specific data type88, its access mode89, a datapoint name and a self identification string. The fieldbus node has also properties, such as the number of data points on this node, a self identification string and custom properties that may be used for the node location.

Properties may be seen as metadata that add vital information to a datapoint, its value or a fieldbus node. This metadata is collected from the underlying fieldbus system, if available. However, several fieldbus systems do not provide such information, which means that in this case these properties either have to be configured in the gateway or are left blank. Therefore applications on top of the IGUANA gateway, which are not fieldbus specific, should not depend on metadata, as it may not be available.

Fieldbus data has to be encoded in some way. The IGUANA gateway introduces several encoding styles which are associated with appropriate data types. Currently, the most important encodings are as follows:

A string is a sequence of characters such as letters or numbers. This data type complies to a ``string'' in various programming languages.
The TIME data type is a long integer that stores the number of seconds elapsed since 01.01.197090.
The SCALARBIN data type complies to a 32 bit floating point data type.
This data type is used to represent fieldbus specific data. The binary datapoint value is converted into a string, where each binary octet is translated into two hexadecimal digits, such as ``0A FF 12 17 C3''91. Any fieldbus specific data types, and also complex data structures, may be encoded this way. However, the client has to be aware of the underlying fieldbus technology to decode the BINHEX data type.

The IGUANA gateway maps any fieldbus specific data type into all possible encodings. Numeric data of types such as integer or float can be represented by the SCALARBIN or the STRING type, while complex data types can only be represented by the BINHEX data type, as depicted in figure 39.

Figure 39: Data Encoding in the IGUANA Gateway

ESD uses the addressing schema of the underlying fieldbus and extends it by adding IGUANA specific addressing items. Together these elements form a unique address which may be used to access fieldbus data. The addressing structure is hierarchical, as depicted in figure 40. It consists of four hierarchies, including the type of the fieldbus, such as ``LON'', the fan network, the node address and datapoint address. In the case of indexed datapoints, the index is also part of the address. The format of the address, especially of the node and datapoint address, depends on the underlying fieldbus system.

Figure 40: ESD Addressing Scheme

This addressing hierarchy is automatically set up by the IGUANA gateway and is dynamically changed if fieldbus nodes are connected or disconnected. This has the advantage that no configuration is needed and new fieldbus devices are automatically detected and added into the hierarchy.

next up previous contents
Next: IGUANA Gateway Services: Up: The IGUANA Gateway Previous: The IGUANA Gateway   Contents
Hermann Himmelbauer 2006-09-27