Functional profiles define a template for functional blocks. A functional block is a collection of network variables and configuration properties designed to perform a single function on a device. Each functional profile can define mandatory and optional configuration properties and network variables. When a functional block implements a functional profile, it must implement all mandatory network variables and configuration properties defined by the functional profile, and it may implement some, all, or none of the optional network variables and configuration properties.
Type information for network variables. This information includes the size, units, scaling factors, and type category (float, integer, signed, etc) for each type. Network variables can contain a single value or they can contain a structure or union containing multiple fields (for example, the SNVT_date_cal network variable contains 3 fields for the year, month, and day).
Network variables can also contain enumerated values which allow the network variable to be set to one of a discrete number of values.
Type information for configuration properties. This information includes the size, units, scaling factors, and type category (float, integer, signed, etc) for each type. Like network variables, configuration properties can contain structures, unions, and enumerated values.
An enumeration type is a list of numerical each associated with a mnemonic name.a network variable or configuration property contains an enumeration, the definitions of the enumerated values are maintained as an enumeration type.
LONWORKS® devices typically exchange data using network variables. Network variables greatly simplify the tasks of designing LONWORKS application programs for interoperability with multiple vendors’ products. A network variable is any data item (temperature, a switch value, or an actuator position setting) that a particular device application program expects to get from other devices on the network (an input network variable) or expects to make available to other devices on the network (an output network variable).
When the application program has a changed value for an output network variable it simply passes the new value to the device firmware. Via a process that takes place during network design and installation called binding, the device firmware is configured to know the logical address of the other devices or group of devices in the network expecting that network variable, and it assembles and sends the appropriate packets to these devices. Similarly, when the device firmware receives an updated value for an input network variable required by its application program, it passes the data to the application program. The binding process thus creates logical connections between an output network variable in one device and an input network variable in another device or group of devices. Connections may be thought of as “virtual wires.”