System information
Table Of Contents
- Table of Contents
- 1 Introduction to the SmartServer SOAP/XML Interface
- 2 SOAP Messages and the SmartServer WSDL File
- 2.1 SmartServer Naming Structure
- 2.2 SmartServer WSDL File
- 2.3 Security
- 2.4 SOAP Request and Response Message Structure
- 2.5 SOAP Messages Formats
- 2.6 Data Point References
- 2.7 UCPTcurrentConfig
- 2.8 Fault Structure
- 2.9 LonString type
- 2.10 SOAP Message Examples
- 3 SmartServer Applications and the SOAP/XML Interface
- 3.1 Overview of SmartServer Applications
- 3.2 SmartServer XML Configuration Files
- 3.3 SmartServer Resource Files
- 3.3.1 Standard Network Variable Type (SNVT) Device Resource Files
- 3.3.2 Standard Configuration Property Type (SCPT) Device Resource Files
- 3.3.3 User Defined Network Variable Type (UNVT) Device Resource Files
- 3.3.4 User Defined Configuration Property Type (UCPT) Device Resource Files
- 3.3.5 Data Point Templates
- 3.3.6 Data Formatting
- 3.4 SOAP Functions
- 3.5 Performance Issues
- 4 Using the SmartServer Data Server
- 4.1 Creating and Modifying the Data Point XML Files
- 4.2 Overview of the Data Point XML File
- 4.3 Data Server SOAP Interface
- 4.3.1 Using the List Function on the Data Server
- 4.3.2 Using the Get Function on the Data Server
- 4.3.3 Using the Set Function on the Data Server
- 4.3.4 Using the Read Function on the Data Server
- 4.3.5 Using the Write Function on the Data Server
- 4.3.6 Using the Invoke Function to Reset Data Point Priorities
- 4.3.7 Data Point Values and Priority Levels
- 4.3.8 Using the Delete Function on the Data Server
- 4.4 Using the Web Binder Application
- 5 Data Loggers
- 5.1 Overview of the Data Logger XML File
- 5.2 Creating and Modifying the Data Logger XML File
- 5.3 Data Logger SOAP Interface
- 6 Alarm Generator
- 6.1 Overview of the Alarm Generator XML File
- 6.2 Creating and Modifying the Alarm Generator XML File
- 6.3 Alarm Generator SOAP Interface
- 7 Alarm Notifier
- 7.1 Overview of the AlarmNotifier XML File
- 7.2 Creating and Modifying the Alarm Notifier XML File
- 7.3 Alarm Notifier SOAP Interface
- 7.3.1 Using the List Function on an Alarm Notifier
- 7.3.2 Using the Get Function on an Alarm Notifier
- 7.3.3 Using the Set Function on an Alarm Notifier
- 7.3.4 Using the Read Function on an Alarm Notifier
- 7.3.5 Using the Write Function on an Alarm Notifier Log File
- 7.3.6 Using the Clear Function on an Alarm Notifier Log File
- 7.3.7 Using the Delete Function on an Alarm Notifier
- 8 Analog Function Block
- 9 Scheduler
- 9.1 Overview of the Scheduler XML File
- 9.2 Creating and Modifying the Scheduler XML File
- 9.3 Scheduler SOAP Interface
- 10 Calendar
- 10.1 Overview of the Calendar XML File
- 10.2 Creating and Modifying the Calendar XML File
- 10.3 Calendar SOAP Interface
- 11 Real Time Clock
- 12 Type Translator
- 12.1 Overview of the Type Translator XML File
- 12.2 Creating and Modifying the Type Translator XML File
- 12.3 Type Translator SOAP Interface
- 12.3.1 Using the List Function on a Type Translator
- 12.3.2 Using the Get Function on a Type Translator
- 12.3.3 Using the Set Function on a Type Translator
- 12.3.4 Pre Defined Type Translator Rules
- 12.3.4.1 16xSNVT_switch_TO_SNVT_state
- 12.3.4.2 SNVT_lev_disc_TO_SNVT_occupancy
- 12.3.4.3 SNVT_lev_disc_TO_SNVT_switch
- 12.3.4.4 SNVT_occupancy_TO_SNVT_setting
- 12.3.4.5 SNVT_scene_TO_SNVT_setting
- 12.3.4.6 SNVT_scene_TO_SNVT_switch
- 12.3.4.7 SNVT_setting_TO_SNVT_switch
- 12.3.4.8 SNVT_state_TO_16xSNVT_switch
- 12.3.4.9 SNVT_switch_TO_SNVT_lev_disc
- 13 Type Translator Rules
- 14 LonWorks Driver
- 14.1 LonWorks Networks
- 14.2 LonWorks Channels
- 14.3 LonWorks Devices
- 14.4 Routers
- 14.5 Remote Network Interface
- 14.6 LonWorks Functional Blocks
- 14.7 Network Variables (LonWorks Data Points)
- 14.8 Configuration Properties (LonWorks Data Points)
- 14.9 LonWorks Connections
- 15 Modbus Driver
- 16 M Bus Driver
- 17 Virtual Driver
- 18 File System Data
- 19 System Information Methods
- 20 Using the SOAP Interface as a Web Service
- 21 Programming Examples
- 21.1 Visual C#.NET Examples
- 21.1.1 Reading and Writing Data Point Values in Visual C# .NET
- 21.1.2 Creating and Reading a Data Logger in Visual C# .NET
- 21.1.3 Creating a Scheduler and Calendar in Visual C# .NET
- 21.1.4 Creating and Installing a LonWorks Device in Visual C# .NET
- 21.1.5 Commissioning External Devices in Visual C# .NET
- 21.1.6 Discovering and Installing External Devices in Visual C# .NET
- 21.1.7 Configuring the SmartServer in Visual C# .NET
- 21.2 Visual Basic.NET Examples
- 21.2.1 Reading and Writing Data Point Values in Visual Basic.NET
- 21.2.2 Creating and Reading a Data Logger in Visual Basic. NET
- 21.2.3 Creating a Scheduler and Calendar in Visual Basic.NET
- 21.2.4 Creating and Installing a LonWorks Device in Visual Basic.NET
- 21.2.5 Commissioning External Devices in Visual Basic.NET
- 21.2.6 Discovering and Installing External Devices in Visual Basic.NET
- 21.2.7 Configuring the SmartServer in Visual Basic.NET
- 21.1 Visual C#.NET Examples
- 22 Programming the SmartServer with Java
- Appendix A: SOAP Tester Example

i.LON SmartServer 2.0 Programmer’s Reference
8-1
8 Analog Function Block
You can use Analog Function Blocks to perform a variety of statistical operations on the values of the
data points in your network, and store the result of each operation in an output data point. You can
perform these operations on as many input data points as you like per Analog Function Block. The
operations you can perform on them include determining the average value of the input data points, the
maximum value of the input data points, the minimum value of the input data points, the sum of the
input data point values, and several others. Each operation is described in detail later in this chapter.
You can also select a comparison function as your operation. In this case, the Analog Function Block
will compare the value of all the input data points to the value of a data point selected as the compare
data point. You can choose from a variety of comparisons that an Analog Function Block can perform
between the data points, including Greater Than, Less Than, and Equal To. The Analog Function
Block will compare the values of the compare and input data point using that comparison, and update
the output data point to a True or False value based on the result of that comparison.
If you are using a comparison function, and your Analog Function Block has multiple input data
points, you can specify a percentage. If that percentage of the comparisons between the input and
compare data points returns True, the output data point will be set to True. Otherwise, it will be set to
False.
For example, consider a case where an Analog Function Block has five input data points and is using
Greater Than as the comparison function. Assume that the percentage is set to 50%. If the value of
50% (at least three) of the input data points is greater than the value of the compare data point, the
output data point will be set to True. Otherwise, it will be set to False.
The Analog Function Block will perform the operation you have selected for it each time any of its
input data points are updated, or at a timed interval you specify. You could use these calculated values
as a part of a control system or to monitor alarm conditions based on multiple inputs.
8.1
Overview of the AnalogFB XML File
The #8000010128000000[4].UFPTanalogFunctionBlock.xml file stores the configuration of the
Analog Function Blocks that you have added to the SmartServer.
You can create new Analog Functional Blocks using the Set function, or by manually editing the
#8000010128000000[4].UFPTanalogFunctionBlock.xml, and rebooting the SmartServer. You can
create up to 20 Analog Functional Blocks per SmartServer. You can add more than 20 Analog
Functional Blocks if you load the dynamic v40 XIF on your SmartServer and you operate your
SmartServer in Standalone mode. Note that using the v40 XIF with the SmartServer operating in LNS
mode (LNS Auto or LNS Manual) is not supported.
The following represents a sample #8000010128000000[4].UFPT
#8000010128000000[4].UFPTanalogFunctionBlock.xml file with one Analog Functional Block. This
Analog Function Block determines the maximum value of the value field of the nviClaValue_1 and
nviClaValue_2 data points on the Digital Output 1 and Digital Output 2 functional blocks on the
SmartServer, and stores that value in the value field of the nvoClsValue_1 data point on the Digital
Input 1 functional block on the SmartServer.
<Item xsi:type="UFPTanalogFunctionBlock_Cfg">
<UCPTname>Net/LON/iLON App/Analog Fn Block[0]</UCPTname>
<UCPTannotation>8000010128000000[4].UFPTanalogFunctionBlock</UCPTannotation>
<UCPThidden>0</UCPThidden>
<UCPTlastUpdate>2008-03-03T12:25:33.900-08:00</UCPTlastUpdate>
<UCPTuri>#8000010128000000[4].UFPTanalogFunctionBlock_Cfg.htm</UCPTuri>
<DataPoint dpType="nvoDropOut" discrim="dir_out" >
<UCPTname>Net/LON/iLON App/Analog Fn Block[0]/nvoAfbDropOut[0]</UCPTname>
</DataPoint>
<DataPoint xsi:type="UFPTanalogFunctionBlock_DpRef" dpType="Input" discrim="dir_in" >
<UCPTname>Net/LON/iLON App/Digital Output 1/nviClaValue_1</UCPTname>
<UCPTfieldName>value</UCPTfieldName>
<UCPTpollRate>900</UCPTpollRate>