Top Banner
SystemTera ® Integrator Guide Revision 2.22.1, März 2018
74

Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

Mar 19, 2023

Download

Documents

Khang Minh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

SystemTera®

Integrator Guide Revision 2.22.1, März 2018

Page 2: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- i -

Document Information

Title: Integrator Guide

Revision: 2.22.1

Revision Date: 07 März 2018

Filename: systemtera_integratorguide_2.22.1_0b.docx

© 2018 System Tera Electronics GmbH, Austria

This work is copyright protected.

All rights including reprint and translation of the document are reserved. Reproduction or use of content in any

manner without express permission of the copyright holder is prohibited.

Whilst every precaution has been taken in the preparation of this manual, no responsibility is assumed for errors

or omissions. No liability is assumed for loss or damage resulting from the use of information in this document.

Page 3: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- ii -

Table of Contents

1. GENERAL INTRODUCTION 1

2. GETTING STARTED 1

2.1 Download and install SystemTera.Manager 2

2.2 Create an Installation 2

2.3 Configure the Installation 4 2.3.1 Configure what is executed on the SystemTera.Server 5

2.4 Configure the Visualization 19

2.5 Transfer the configuration to SystemTera.Server 22

3. CONFIGURATION 23

3.1 Bus Objects 23 3.1.1 Modbus RTU Master 24 3.1.2 Modbus RTU Slave 36 3.1.3 Modbus IP Master 37 3.1.4 Modbus IP Slave 40 3.1.5 KNX 42 3.1.6 EnOcean 42 3.1.7 Other supported Interfaces 45

3.2 Data Objects 45

3.3 Data Sources 52

3.4 Gateway 52 3.4.1 Modbus IP – RTU Gateway 52

3.5 Modules 53

3.6 Rules 53

3.7 Alerting 58 3.7.1 Alert Configuration 58 3.7.2 Alert settings at the tenant level 62 3.7.3 Configuration Example: Temperature threshold alarm 64

Page 4: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 1 -

1. General Introduction

This document describes

Components and concepts of SystemTera

How to configure a SystemTera.Server

This document is intended for integrators and power users who intend to plan,

setup or modify the configuration of a SystemTera.Server.

2. Getting Started

To configure a new SystemTera.Server, you need to cover the following steps:

1. Download and install the SystemTera.Manager

2. Create an installation in the SystemTera.Manager. This can be done

either by registering a new SystemTera.Server-V using the credentials

printed on the back side of the server housing (preferred method), or by

manually creating a new installation in the List view of the Installations

section of the SystemTera.Manager. In the latter case matching

credentials need to be set up both in the SystemTera.Manager and in

the section “Cloud Settings” of the SystemTera admin web pages.

3. Configure what is executed on the SystemTera.Server in the

SystemTera.Manager configuration section of an installation. This

includes setting up bus objects, data objects, rules and data handling:

a. Bus objects define which data is exchanged with devices

connected to the SystemTera.Server.

b. Data objects define a device independent anchor for processing

the data from devices and input from the visualization.

c. Data handling defines whether data objects are to be logged for

having a history of the data, and it defines which data is

forwarded to the cloud or a mobile app for visualization.

d. Rules define functionality executed on the SystemTera.Server

when new data is received or when a defined time has expired.

This step does not require a SystemTera.Server to be online. This step

requires online access to the SystemTera.Cloud.

4. Configure the scope and shape of the visualization of the data in the

visualization editor of the SystemTera.Manager. Configure additional

users for viewing the visualization as needed in the User section of the

SystemTera.Manager.

This step does not require a SystemTera.Server to be online. This step

requires online access to the SystemTera.Cloud.

5. Transfer the configuration to SystemTera.Server.

Page 5: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 2 -

This step requires both the SystemTera.Manager and the System-

Tera.Server to have an online connection to the cloud, or the

configuration can be saved on a USB stick and transferred to the

SystemTera.Server by restarting it with the USB stick present at startup.

6. Test the configuration. You can activate the debug mode in the

configuration editor of the SystemTera.Manager to see the current

values of bus objects and data objects to facilitate this step.

7. Test the visualization on the target device, e.g. a particular smart phone.

The following sections explain these steps in more detail. As an example, a

PT1000 temperature sensor is configured with data logging and display of the

current value on a smart phone. The sensor is then used to control an electric

heater to reach a set temperature.

2.1 Download and install SystemTera.Manager

The SystemTera.Manager is the software for

configuring a SystemTera.Server,

accessing the visualization of installations,

performing user management, and

exporting data from the System.

Download the installation file for the SystemTera.Manager from

https://www.systemtera.com/de/downloads/ .

The SystemTera.Manager requires Windows 7 or newer and the .NET Framework

from Microsoft.

The installation is a so called Click-once installation, which does not require

administrative privileges on the system.

2.2 Create an Installation

When you start the SystemTera.Manager for the first time, you will see the login

window shown in Figure 1.

Page 6: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 3 -

Figure 1: Login to SystemTera.Manager

To create a new installation, click on “Register new SystemTera.Server” and

follow the instructions.

Figure 2: First step of registering a new SystemTera.Server

As part of the registration process you will be able to choose between creating

a new user for the SystemTera.Manager, or to add the new installation to an

existing user you already have.

It is not necessary for the SystemTera.Server to be online for these steps.

Page 7: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 4 -

2.3 Configure the Installation

To start the configuration process, launch the SystemTera.Manager and login

using the user you have either received during the registration process or from

your integration partner.

Your screen will look similar to Figure 3. If you see more tiles than in Figure 3,

you have additional access permissions which are not required for the

configuration of a single SystemTera.Server and which can be ignored for the

purpose of this document section.

Figure 3: SystemTera.Manager after login

Page 8: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 5 -

Click on “Installations”, select the installation you would like to configure in the

list of installations, and click on the configuration button as indicated on Figure

4.

Note: the question mark in the status column indicates that the System-

Tera.Server for this installation is currently not online and has never been online

before.

Figure 4: List of installations

2.3.1 Configure what is executed on the SystemTera.Server

2.3.1.1 Configure what is connected to the SystemTera.Server

In the first step of the configuration you need to define which devices the

SystemTera.Server should be communicating with.

This is done by adding elements to the bus objects tree on the left-hand side of

screen as shown in Figure 5.

Page 9: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 6 -

To do thi

Figure 5: Configuration screen of an installation

As part of this getting started section we will just add a simple PT1000

temperature sensor which we assume to be connected to input 1 of the

SystemTera.Server.

To do this, move the mouse cursor over the connector where you want to add

a device and press the “+” button which appears in this line. In our example this

is the line called “Inputs”, as shown in Figure 6.

Page 10: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 7 -

Figure 6: Add an input to the bus objects

A selection of compatible object templates appears. Select “PT 1000”.

Figure 7: Select a bus object template

Page 11: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 8 -

Figure 8: A new PT1000 sensor has been added

Figure 8 shows the tree of bus objects with the new PT1000 temperature sensor.

You can change the name of the sensor to reflect its purpose, e.g. “Room temp”.

The Description property can be used to capture more details about the sensor.

This field is just for documentation purposes and does not have a functional

impact.

The Address refers to the physical connector being used on the

SystemTera.Server.

For more details about using bus objects please refer to section 3.1 “Bus

Objects”.

2.3.1.2 Configure Data Objects

Data objects are used to define what happens with data handled in the

SystemTera.Server in fashion which is independent of the interface the data

originally came from.

Page 12: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 9 -

Data objects also offer an opportunity to describe all aspects of a logical entity

in one object. For example, a data object representing venetian blinds might

contain attributes covering all commands that can be sent to the blinds and all

the status responses which may come back.

Use folders to organize data objects intuitively, e.g. by having one folder per

room and another folder for central functions.

For our example, move the mouse cursor to the line “Data objects” and press

the “+” button.

Figure 9: Add a new data object

There is a template for a temperature sensor. To avoid searching in the long list

of available templates just type a part of the template name. If only one template

remains in the list you can also simply press the enter key to select it. See Figure

10.

Figure 10: Ad a temperature sensor data object

Page 13: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 10 -

Figure 11: The temperature sensor object has been added

To get the data from the physical sensor to the temperature sensor data object,

use the mouse to drag the “Value” attribute from the PT 1000 sensor and drop

it on the “Value” attribute of the temperature sensor data object (see Figure 12).

Figure 12: Drag and drop bus object attribute to data object attribute

As a result, a link from the bus object attribute to the data object attribute is

created. Because the name of the data object was still the default name, the

name of the bus object was copied to the data object which is now also called

“Outdoor temp” (see Figure 13).

Page 14: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 11 -

Figure 13: After drag & drop operation

2.3.1.3 Configure Data Handling

We would like to store a history of the measurements from our sensor. To do

so, we need to globally activate the local data storage module. This is done in

the properties of the root node of the data objects tree.

Figure 14: Activate local data storage in the properties of the root node

Page 15: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 12 -

Local data storage stores data on a USB stick on the SystemTera.Server. The data

on the stick can be shown on diagrams of the SystemTera.Manager, or exported

to a .csv file using the SystemTera.Manager. Future versions of the smart phone

app will also be able to display diagrams by directly access this data.

The fastest sampling rate available is 100ms. Normal and slow sampling intervals

have to be a multiple of the fast sampling interval.

Figure 14 shows the default settings.

You need to attach a suitable USB stick to one of the USB ports of the

SystemTera.Server to use local data storage. If data logging is intended for

several months or more, we recommend using an industry grade or SLC type

USB stick.

Now we can activate data logging in the properties of the temperature sensor

data object by just selecting the checkbox of the module (see Figure 15).

Figure 15: Activate local data storage for the temp sensor

The properties of each data object determine which modules are active for this

object.

The module “Live Data” is required to show live updates on the

SystemTera.Manager and the SystemTera.App via the SystemTera.Cloud.

The module “Local access” is required for the SystemTera.App to directly access

the SystemTera.Server without going through the SystemTera.Cloud.

Page 16: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 13 -

2.3.1.4 Configure Data Aggregation

When needed the numerical attributes of data objects can be used to create a

rolling minimum, maximum or average of the received values.

We will use this in this example to combine multiple sensor readings for getting

better quality data for visualization.

To improve the quality of the sensor readings, increase the polling interval for

the sensor from every 10 seconds (default) to e.g. every 100ms.

This is done in the properties of the “Inputs” node.

Figure 16: Set the input polling interval

We can now use the properties of the data object attribute to define that we

would like to use only the minimum of the last 100 values. Note: this works

better than the average to reduce the impact of noise from the sensor cabling

on the AD converter. This configuration will produce a rolling minimum across

the most recent sensor readings.

Page 17: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 14 -

Figure 17: Select aggregation for data received by the data object attribute

2.3.1.5 Configure Rules

Go through the following steps to create and configure a rule which controls a

heater depending on a fixed setpoint (for the sake of simplicity of the example)

and the current room temperature.

First add another data object using the “Electrical load” template.

Then add the rule by moving the mouse cursor in the line of a folder and press

the “+” button, then select the Two-Point Controller template.

Page 18: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 15 -

Figure 18: Add two-point controller rule template

Switch to the rule editor by pressing the button. The screen will then look

as shown in Figure 19. Later move back to the previous view by pressing the

button.

Page 19: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 16 -

Figure 19: Rule editor for two-point contntroller

Configure the parameters of the rule as shown in Figure 20.

Use data object attributes as parameters by drag & drop from the attribute

name to the parameter field.

Use the link toggle button next to the “Nominal Value” parameter to toggle the

parameter from link to constant value and enter the desired target temperature.

The final result should look like Figure 20.

Page 20: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 17 -

Figure 20: Parameters for two-point controller after configuration

The rule is now fully functional. However the result will just be written to the

electrical load data object without effect in the physical world. Therefore we

need to add an actor for the heater.

In this simple example we just use one of the relay outputs of the

SystemTera.Server itself. See Figure 21after adding the output and Figure 22

after linking the output attribute with the switching status attribute of the

electrical load.

Page 21: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 18 -

Figure 21: Add relais output for heater

Figure 22: Link relais output value to switching status of data object

Page 22: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 19 -

2.4 Configure the Visualization

To configure the visualization, you need to save the configuration and then

switch to the visualization editor (see Figure 23).

Figure 23: Switch to visualization editor

Create a first schema by selecting “Layout for mobile devices”.

Figure 24: Select the type of visualization schema

Use drag & drop to drag a temperature sensor to the preview area.

Page 23: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 20 -

Figure 25: Drag & drop temperature sensor

In the properties of the temperature sensor widget, select the data object which

should provide the data (see Figure 26).

Figure 26: Select the room temp data object as data source

Page 24: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 21 -

Figure 27: Temperature widget after configuration

Then add a push button widget for showing the status of the heater.

If it should not be possible to manually control the heater, add a dummy

attribute and select this for the normal attribute, select “separate status

attribute” and select the attribute controlled by the two-point controller there.

Figure 28: Add a push button widget for the heater

The following figure shows a screenshot from an Android smart phone with a

page from a sample configuration.

Page 25: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 22 -

Figure 29: Sample screenshot of the SystemTera.App

2.5 Transfer the configuration to SystemTera.Server

In order for a configuration to become active on a SystemTera.Server, it has to

be saved (see Figure 30) and sent to the server (see Figure 31).

Figure 30: Save configuration

Figure 31: Transfer configuration to the server

Page 26: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 23 -

3. Configuration

3.1 Bus Objects

Bus objects exist to interface with external devices.

The primary interfaces supported by SystemTera.Server are well known industry

standards. In addition to that SystemTera.Server also supports integration for

some proprietary interfaces.

Bus objects are structured and named reflecting the structure and naming

conventions of the target interfaces.

Modbus RTU devices can be connected via the built in RS485, or via USB RS485

adapter. Modbus RTU slaves can also be connected via USB to RS232 adapter.

Although RS232 is not a bus, some manufacturers have products which use

Modbus to communicate between components internally and offer an RS232

gateway to the internal bus.

The following table shows all SystemTera.Server interfaces with support for the

Modbus protocol. For each interface the Modbus functionality supported by the

SystemTera.Server is shown, as well as how many instances of that functionality

can be configured and what functionality needs to be present on the connected

devices.

SystemTera.Server

Interface

SystemTera.Server

configured as Max Connected device

RS485 Modbus RTU

Master 1 Modbus RTU Slave

RS485 Modbus RTU Slave 1 Modbus RTU Master

USB connected to

RS232 adapter

Modbus RTU

Master

2 / 8 via

USB hubs

Gateway to Modbus

RTU Slaves

USB connected to

RS485 adapter

Modbus RTU

Master

2 / 8 via

USB hubs Modbus RTU Slave

USB connected to

RS485 adapter Modbus RTU Slave

2 / 8 via

USB hubs Modbus RTU Master

Ethernet Modbus IP Master 1

Modbus IP Slave or

Gateway to Modbus

RTU Slaves

Ethernet Modbus IP Slave n Modbus IP Master

Ethernet Modbus IP – RTU

Gateway n

Modbus IP Master

connected to

Ethernet and Mod-

Page 27: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 24 -

bus RTU Slave

connected to

another System-

Tera.Server interface

3.1.1 Modbus RTU Master

To configure SystemTera.Server as a Modbus RTU Master, move the mouse

cursor into the line of the interface where the slaves for the Modbus RTU Master

will by physically connected, and press the button.

The following interfaces support Modbus RTU Master:

RS485

USB via a USB – RS485 adapter

USB via a USB – RS232 adapter

Figure 32

After clicking on , a popup window (see Figure 33) comes up. Select “ModBus

– RTU Master” from the list.

Page 28: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 25 -

Figure 33

3.1.1.1 Serial Interface Parameters

Once you have added and selected the ModBus RTU Master, the properties for

configuration are visible underneath the tree of bus objects as shown in Figure

34.

Figure 34

Page 29: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 26 -

Name: A name for this bus master. Changing the name is important

if there are more than one Modbus RTU master in one

configuration. Short names have an advantage because the

path name to an element in the master will be shorter, and it

will be easier to see the full link between a bus object attribute

and a data object attribute. The name does not have a

functional impact.

Description: A description to better document the configuration. The

description does not have a functional impact.

Address: The Linux device for the interface on the SystemTera.Server.

The system populates this element automatically. This is a read

only property.

Baud rate: The speed for the serial interface to the bus. You need to make

sure that all devices attached to one bus line share the same

settings for Baud rate, parity, data bits and stop bits. The

length and quality of the bus cabling and the slowest device

on the bus determine the maximum Baud rate.

Figure 35

Parity: This property determines the type of additional check bit sent

with each character: Odd, even or none.

Data bits: The number of bits per character. Select 8 bits.

Stop bits: The number of stop bits sent after each character. Modbus

standard defines either the use of 2 stop bits and no parity, or

a parity bit and one stop bit. SystemTera.Server supports all

possible combinations of parity and stop bits.

3.1.1.2 Adding Modbus Slaves

Press the button on the line of the Modbus RTU master. In the list of Modbus

slave templates (see Figure 36) either select a generic Modbus RTU device or

Page 30: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 27 -

the specific device type of your device if the list contains a specific template for

the device you want to communicate with.

Templates for a specific slave offer the advantage of already knowing the

register names and addresses for that device type.

Figure 36

Figure 37 shows the properties for a generic Modbus slave.

Page 31: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 28 -

Figure 37

Name: A name for the slave device. Short names have an

advantage because the path name to an element in the

master will be shorter, and it will be easier to see the full

link between a bus object attribute and a data object

attribute. The name does not have a functional impact.

Max numerical registers per read request: The SystemTera.Server will auto-

matically group access to consecutive numerical

registers and if possible create only one read request to

Page 32: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 29 -

read all consecutive registers of the same type with one

command.

Some devices only permit a limited number of registers

to be read per request. Use this parameter to limit the

number of registers read per request if the target device

requires a smaller limit. The maximum value is 125

registers per request.

Max bit registers per read request: The SystemTera.Server will automatically

group access to consecutive bit registers and if possible

create only one read request to read all consecutive

registers of the same type with one command.

Some devices only permit a limited number of registers

to be read per request. Use this parameter to limit the

number of registers read per request if the target device

requires a smaller limit. The maximum value is 2000

registers per request.

Description: A description to better document the configuration. The

description does not have a functional impact.

Address: Each Modbus RTU slave must be configured to have an

address. Valid values range from 1 to 247. The address

must be unique amongst all slaves connected to the

same physical bus line.

Polling interval: Modbus is a single master bus. Therefore, the slaves

cannot notify the master of any changed values on their

own. The master has to query the slaves at regular

intervals. This parameter determines the pause between

asking the slave for an update on all of the values

configured for this slave (see 3.1.1.3 for how to configure

which values are to be read). The interval is defined in

seconds. The smallest possible interval is 100ms.

Please keep in mind that the bus line is a shared medium

and has to provide the bandwidth to support the polling

interval for all data from all slaves. The more values you

read per cycle the longer the interval will have to be.

Device Read Delay: This parameter determines the length of the pause after

reading data values from other slaves before requesting

data from this slave in milliseconds. The default value is

zero.

Some Modbus slaves have very little CPU power and

cannot respond to a series of queries, which arrive as

quickly as the selected Baud rate permits. If needed, start

with a long time to see whether it makes a difference

Page 33: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 30 -

(e.g. 500ms) and work down to smaller values to see

what still works. Add at least 10% to the smallest value

that still worked for the final configuration.

Attribute Read Delay: This parameter determines the length of a pause

between reading data values from this slave in

milliseconds. The default value is zero.

Some Modbus slaves have very little CPU power and

cannot respond to a series of queries, which arrive as

quickly as the selected Baud rate permits. If needed, start

with a long time to see whether it makes a difference

(e.g. 500ms) and work down to smaller values to see

what still works. Add at least 10% to the smallest value

that still worked for the final configuration.

Write in intervals: Check this checkbox if you want all values configured for

writing to the slave written at regular intervals.

Independent of this setting data configured for writing

to a Modbus slave will always be written on an event

driven basis when the data value changes.

Writing interval: This parameter determines the pause between writing

all data to the slave again. This parameter only has an

effect if “Write in intervals” is checked. The smallest

possible parameter value is 1 second.

Write mode: This parameter (see Figure 38) determines how the

SystemTera.Server writes values to the Modbus slave.

The Modbus protocol offers two functions for doing so.

Some devices only support one of those functions.

Usually it is sufficient to select “Automatic”.

Figure 38

3.1.1.3 What data to exchange

Modbus communication is based on registers. The register types are very basic.

The following table shows the Modbus register types.

Read only Read and write access

2-byte values

Signed: -32768 - 32767

Unsigned: 0 - 65535

Input register Holding register

Page 34: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 31 -

1 Bit: true / false Discrete input Coil

To work with larger number formats several Modbus registers are used in

combination to represent one value.

It is important to understand that Modbus register addressing works like

addressing memory in units of 2 bytes. A 4-byte value at input register address

10 will actually occupy input register addresses 10 and 11.

For data types needing more than one register SystemTera.Server uses a single

command to read or write multiple registers thus only using one request.

The following data types are available for Modbus communication:

Figure 39

There is no data type specific to date, time and combined date / time values.

You can map date, time and combined date / time data object attributes to a

numerical 8-byte Modbus register type. The system will convert the date time

information from and to the Modbus attribute according to the Unix style

representation of milliseconds since Jan 1st 1970.

Press the button on the right-hand side of a Modbus slave to add a value for

data exchange with that Modbus slave. Figure 40 shows the screen after a 4-

byte Integer attribute has been added.

Page 35: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 32 -

Figure 40

The properties for numerical Modbus attributes are:

Name: A name for the attribute. This should resemble the

register description of the manual of the Modbus device.

Short names have an advantage because the path name

to an element in the master will be shorter, and it will be

easier to see the full link between a bus object attribute

and a data object attribute. The name does not have a

functional impact.

Page 36: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 33 -

Description: A description to better document the configuration. The

description does not have a functional impact.

Table: A complete address for a Modbus register consists of

table and register address. The table can either be “Input

register”, “Holding register”, “Discrete input” and “Coil”.

Some devices do not document the table used for

registers because they use a fixed range of register

addresses per table. In this case, the register address

implicitly defines the table. For these devices, you can

determine the table by looking at the register number in

the device documentation. At the same time, the first

digit is usually not part of the register address that has

to be used.

Register in

documentation

Calculate

Register

address

Table

1-9999 -1 Coil

10001-19999 -10001 Discrete Input

30001-39999 -30001 Input register

40001-49999 -40001 Holding register

Register address: A zero based data address between 0 and 65535. Some

devices document their registers using an addressing

scheme starting with one. In this case, you have to

subtract one from the number in the documentation

before entering the address in the SystemTera.Server

configuration.

Byte order: Use this parameter to specify the byte order for this

slave.

AB CD = big endian

CD AB = little endian

The Modbus documentation only specifies the byte

order for 2-byte values as big endian. This means that

the first byte sent on the bus contains the higher-

ranking bits of the two bytes. The standard does not

explicitly specify how to deal with values that require

more than 2 bytes for representation. Consequently,

different vendors have implemented this differently.

Factor: Use this parameter to transform the value read from the

device before using it.

Page 37: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 34 -

Example: use “0.1” to automatically divide an incoming

temperature specified as an integer in 1/10° C. The

SystemTera.Server will then internally use double

precision float values in °C.

The inverse calculation is performed before writing to

the device.

Offset: Use this parameter to transform the value read from the

device before using it.

Example: if a temperature sensor value in 1/10°C is read

from the device and the factor is set to “0.1”, use “-0.2”

to subtract a fixed offset to correct a sensor with a

known fixed error of 0.2°C.

The inverse calculation is performed before writing to

the device.

Ignore repeated values from bus: Check this checkbox to suppress further

processing if consecutive read operations return the

same result.

You might want to use this option to prevent rules which

depend on this input to be executed after each read,

especially if this has undesired side effects.

You might want to make sure not to check this option if

you want to calculate an average for some values and

therefore depend on getting values with the most

regular timing possible.

Read: Check this box to read from the device.

Write: Check this box to write to the device. This box cannot be

checked for registers in read only tables.

Page 38: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 35 -

Figure 41

Figure 41 shows the properties for a Yes/No (Boolean) attribute. For all

properties with identical names as for numerical attributes, please refer to the

explanation above.

Invert value: Use this parameter to invert the Boolean value read from

the device before using it.

Example: check this option to invert the logic of an

attribute e.g. from “is open” to “is closed”.

Page 39: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 36 -

The inverse calculation is performed before

writing to the device.

3.1.2 Modbus RTU Slave

To configure SystemTera.Server as a Modbus RTU Slave, move the mouse cursor

into the line of the interface, which the SystemTera.Server will be physically

connected to as a slave, and press the button.

The following interfaces support Modbus RTU Slave:

RS485

USB via a USB – RS485 adapter

After clicking on , a popup window (see Figure 33) comes up. Select “ModBus

– RTU Slave” from the list.

Figure 42 shows the properties for the Modbus RTU slave.

Figure 42

Name: A name for this slave. Changing the name is important

if there are more than one Modbus RTU slaves in one

configuration. Short names have an advantage because

the path name to an element in the slave will be shorter,

and it will be easier to see the full link between a bus

object attribute and a data object attribute. The name

does not have a functional impact.

Description: A description to better document the configuration. The

description does not have a functional impact.

Address: The Linux device for the interface on the

SystemTera.Server. The system populates this element

automatically. This is a read only property.

Page 40: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 37 -

Baud rate: The speed for the serial interface to the bus. You need

to make sure that all devices attached to one bus line

share the same settings for Baud rate, parity, data bits

and stop bits. The length and quality of the bus cabling

and the slowest device on the bus determine the

maximum Baud rate.

Figure 43

Parity: This property determines the type of additional check

bit sent with each character: Odd, even or none.

Data bits: The number of bits per character. Select 8 bits.

Stop bits: The number of stop bits sent after each character.

Modbus standard defines either the use of 2 stop bits

and no parity, or a parity bit and one stop bit.

SystemTera.Server supports all possible combinations of

parity and stop bits.

Address: This is the address of the slave on the bus. It has to be

unique amongst all slaves on the same physical bus line.

Valid values range from 1 to 247.

Configuring attributes for a Modbus slave is identical to configuring attributes

for a Modbus master. Please refer to chapter 3.1.1.3 “What data to exchange”.

3.1.3 Modbus IP Master

Modbus IP has almost identical capabilities as Modbus RTU. The main difference

is the layer for transporting the data: Modbus IP uses an IP network connection,

and Modbus RTU uses a serial data interface.

Take care to only use Modbus IP in a secured network environment because the

Modbus IP protocol does not support authentication, authorization or

encryption of any sort.

Page 41: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 38 -

The IP network provides a transport layer that can be shared easily. Therefore, it

is possible to set up one Modbus IP master and several Modbus IP slaves on the

same physical Ethernet interface of the SystemTera.Server at the same time.

Figure 44

Figure 44 shows the properties for a Modbus IP master.

Name: A name for this bus master. The name does not have a

functional impact.

Description: A description to better document the configuration. The

description does not have a functional impact.

3.1.3.1 Adding Modbus IP Slaves

Press the button on the line of the Modbus IP master. Select Modbus IP

device.

Figure 45 shows the properties for a Modbus IP slave connected to a

SystemTera.Server as a master.

Address: Modbus RTU address of the target slave. This parameter

has no bearing on Modbus IP slaves. This parameter is

important, if the target slave is a Modbus RTU slave

behind a Modbus IP to RTU gateway.

Page 42: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 39 -

IP address: IPv4 address or hostname of the Modbus slave.

Port: Port number for the Modbus interface on the Modbus

slave.

Figure 45: Properties of a Modbus IP device

Timeout: Timeout in seconds when waiting for an answer from the

slave. The smallest possible value is 100ms.

Polling interval: This parameter determines the pause between asking

the slave for an update on all of the values configured

for this slave (see 3.1.1.3 for how to configure which

values are to be read). The smallest possible interval is

100ms.

Max numerical registers per read request: The SystemTera.Server will auto-

matically group access to consecutive numerical

registers and if possible create only one read request to

read all consecutive registers of the same type with one

command.

Some devices only permit a limited number of registers

to be read per request. Use this parameter to limit the

number of registers read per request if the target device

Page 43: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 40 -

requires a smaller limit. The maximum value is 125

registers per request.

Max bit registers per read request: The SystemTera.Server will automatically

group access to consecutive bit registers and if possible

create only one read request to read all consecutive

registers of the same type with one command.

Some devices only permit a limited number of registers

to be read per request. Use this parameter to limit the

number of registers read per request if the target device

requires a smaller limit. The maximum value is 2000

registers per request.

Write in intervals: Check this checkbox if you want all values configured for

writing to the slave written at regular intervals.

Independent of this setting data configured for writing

to a Modbus slave will always be written on an event

driven basis when the data value changes.

Writing interval: This parameter determines the pause between writing

all data to the slave again. This parameter only has an

effect if “Write in intervals” is checked. The smallest

possible parameter value is 1 second.

Write mode: This parameter determines how the SystemTera.Server

writes values to the Modbus slave. The Modbus protocol

offers two functions for doing so. Some devices only

support one of those functions. Usually it is sufficient to

select “Automatic”.

3.1.4 Modbus IP Slave

Press the button on the line of the Ethernet interface. Select Modbus IP slave.

Figure 46 shows the properties of a Modbus IP slave.

Page 44: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 41 -

Figure 46

Name: A name for this slave. Changing the name is important

if there are more than one Modbus RTU slaves in one

configuration. Short names have an advantage because

the path name to an element in the slave will be shorter,

and it will be easier to see the full link between a bus

object attribute and a data object attribute. The name

does not have a functional impact.

Description: A description to better document the configuration. The

description does not have a functional impact.

Port: The port at which the slave listens for Modbus

commands from the server. Values need to be in the

range from 1500 to 1599 to let the SystemTera.Server

firewall pass the requests. Each port can only be used

once for all types of Ethernet services in one entire

SystemTera.Server configuration.

Configuring attributes for a Modbus slave is identical to configuring attributes

for a Modbus master. Please refer to chapter 3.1.1.3 “What data to exchange”.

Page 45: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 42 -

3.1.5 KNX

The SystemTera.Server supports KNX on twisted pair wiring.

KNX support is currently described in a separate document.

3.1.6 EnOcean

EnOcean is a wireless communication standard optimized for low energy usage.

A lot of enOcean devices use power from harvesting energy from the

environment and operate without needing a battery.

To be able to communicate with enOcean radio devices, an enOcean sender and

receiver must be connected to one of the USB ports of the SystemTera.Server.

The SystemTera.Server can communicate with enOcean devices in one of two

ways:

1. EnOcean devices such as an enOcean rocker switch can be taught into

the SystemTera.Server. In order to do so the SystemTera.Server must be

online, and the enOcean USB extension must be connected and

configured. After pressing the teach-in button in the System-

Tera.Manager (see Figure 47), teach in telegrams will be displayed in a

device list. The received teach-in telegrams can then be used to add an

enOcean device to the list of paired devices.

2. The SystemTera.Server can be used to simulate a standard enOcean

device such as a rocker switch. The SystemTera.Server can send teach-in

telegrams to enOcean actuator devices such as a smart plug. The

simulated devices are then listed in the “Simulated devices” folder. This

way the SystemTera.Server offers control over enOcean actuators.

Figure 47: enOcean teach-in button

Page 46: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 43 -

EnOcean devices communicate with each other using so called Enocean

Equipment Profiles, abbreviated “EEP”.

The following list shows the EEPs supported by the SystemTera.Server.

EEP Description

A5-02-01 Temperature Sensor Range -40°C to 0°C

A5-02-02 Temperature Sensor Range -30°C to +10°C

A5-02-03 Temperature Sensor Range -20°C to +20°C

A5-02-04 Temperature Sensor Range -10°C to +30°C

A5-02-05 Temperature Sensor Range 0°C to +40°C

A5-02-06 Temperature Sensor Range +10°C to +50°C

A5-02-07 Temperature Sensor Range +20°C to +60°C

A5-02-08 Temperature Sensor Range +30°C to +70°C

A5-02-09 Temperature Sensor Range +40°C to +80°C

A5-02-0A Temperature Sensor Range +50°C to +90°C

A5-02-0B Temperature Sensor Range +60°C to +100°C

A5-02-10 Temperature Sensor Range -60°C to +20°C

A5-02-11 Temperature Sensor Range -50°C to +30°C

A5-02-12 Temperature Sensor Range -40°C to +40°C

A5-02-13 Temperature Sensor Range -30°C to +50°C

A5-02-14 Temperature Sensor Range -20°C to +60°C

A5-02-15 Temperature Sensor Range -10°C to +70°C

A5-02-16 Temperature Sensor Range 0°C to +80°C

A5-02-17 Temperature Sensor Range +10°C to +90°C

A5-02-18 Temperature Sensor Range +20°C to +100°C

A5-02-19 Temperature Sensor Range +30°C to +110°C

A5-02-1A Temperature Sensor Range +40°C to +120°C

A5-02-1B Temperature Sensor Range +50°C to +130°C

A5-02-20 Temperature Sensor Range -10°C to +41.2°C

A5-02-30 Temperature Sensor Range -40°C to +62.3°C

A5-04-01 Temperature and Humidity Sensor Range 0°C to +40°C and 0% to 100%

A5-04-02 Temperature and Humidity Sensor Range -20°C to +60°C and 0% to

100%

A5-04-03 Temperature and Humidity Sensor Range -20°C to +60°C (10bit) and 0%

to 100%

A5-07-01 Occupancy with Supply voltage monitor (opt.)

A5-07-02 Occupancy with Supply voltage monitor

Page 47: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 44 -

EEP Description

A5-07-03 Occupancy with Supply voltage monitor and 10-bit illumination

measurement

A5-08-01 Range 0lx to 510lx, 0°C to +51°C and Occupancy Button

A5-08-02 Range 0lx to 1020lx, 0°C to +51°C and Occupancy Button

A5-08-03 Range 0lx to 1530lx, -30°C to +50°C and Occupancy Button

A5-09-02 CO-Sensor 0ppm to 1020ppm

A5-09-04 CO2 Sensor

A5-09-05 VOC Sensor

A5-09-06 Radon Sensor

A5-09-07 Particle Sensor

A5-09-08 Pure CO2 Sensor

A5-10-01 Temperature Sensor, Set Point, Fan Speed and Occupancy Control

A5-10-02 Temperature Sensor, Set Point, Fan Speed and Day/Night Control

A5-10-03 Temperature Sensor, Set Point Control

A5-10-04 Temperature Sensor, Set Point and Fan Speed Control

A5-10-05 Temperature Sensor, Set Point and Occupancy Control

A5-10-06 Temperature Sensor, Set Point and Day/Night Control

A5-10-07 Temperature Sensor and Fan Speed Control

A5-10-08 Temperature Sensor, Fan Speed and Occupancy Control

A5-10-09 Temperature Sensor, Fan Speed and Day/Night Control

A5-10-0A Temperature Sensor, Set Point and Single Input Contact

A5-10-0B Temperature Sensor and Single Input Contact

A5-10-0C Temperature Sensor and Occupancy Control

A5-10-0D Temperature Sensor and Day/Night Control

A5-10-10 Temperature and Humidity Sensor, Set Point and Occupancy Control

A5-10-11 Temperature and Humidity Sensor, Set Point and Day/Night Control

A5-10-12 Temperature and Humidity Sensor and Set Point

A5-10-13 Temperature and Humidity Sensor, Occupancy Control

A5-10-14 Temperature and Humidity Sensor, Day/Night Control

A5-10-15 10 Bit Temperature Sensor, 6 Bit Set Point Control

A5-10-16 10 Bit Temperature Sensor, 6 Bit Set Point Control; Occupancy Control

A5-10-17 10 Bit Temperature Sensor, Occupancy Control

A5-10-18 Illumination, Temperature Set Point, Temperature Sensor, Fan Speed and

Occupancy Control

A5-10-19 Humidity, Temperature Set Point, Temperature Sensor, Fan Speed and

Occupancy Control

Page 48: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 45 -

EEP Description

A5-10-1A Supply Voltage Monitor, Temperature Set Point, Temperature Sensor,

Fan Speed and Occupancy Control

A5-10-1B Supply Voltage Monitor, Illumination, Temperature Sensor, Fan Speed

and Occupancy Control

A5-10-1C Illumination, Illumination Set Point, Temperature Sensor, Fan Speed and

Occupancy Control

A5-10-1D Humidity, Humidity Set Point, Temperature Sensor, Fan Speed and

Occupancy Control

A5-10-1E Supply Voltage Monitor, Illumination, Temperature Sensor, Fan Speed

and Occupancy Control (II)

A5-10-1F Temperature Sensor, Set Point, Fan Speed, Occupancy and Unoccupancy

Control

A5-10-20 Temperature and Set Point with Special Heating States

A5-10-21 Temperature, Humidity and Set Point with Special Heating States

A5-12-01 Electricity

D5-00-01 Single Input Contact

F6-02-01 Light und Blind Control Application Style 1

F6-10-00 Window Handle

F6-10-00 Window Handle ERP2

3.1.7 Other supported Interfaces

Awattar Hourly Tariff via Ethernet

MBus via USB Extension

Honeywell XL-50 / XL-500 via RS232 via USB

Buderus Logamatic 4000 via RS232 via USB

Davis Vantage Weather Stations via USB

Solarier SHX Controller via RS232 via USB

Eaton Moeller RF Bus via RS232 via USB

3.2 Data Objects

Data objects are used as the basis for visualization in the SystemTera.Manager,

the Apps for smart phones, and for logging data either to a USB stick or into

cloud storage on the SystemTera.Cloud.

Each data object may contain one or more attributes, e.g. a data object of the

type “Light” may contain the attributes “Light On” and “Brightness”.

Page 49: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 46 -

Data objects represent data in a device independent fashion. All data exchanged

with external devices is converted between the device specific format and the

internal format used by the data objects. If the internal format uses a binary

format different from the native format of the external device, numbers will be

converted using up to 8 bytes floating point numbers for the internal

representation to avoid loss of information.

When the SystemTera.Server is used as a gateway between devices using a

different bus standard (e.g. an enOcean button and a KNX actor), the conversion

from and to data objects makes it possible to exchange data between any

combination of bus standards supported by the SystemTera.Server.

Each data object type offers a set of attributes which matches the purpose of

the type.

The generic data object offers all attributes available in the system. Therefore,

you could create a configuration just using generic data objects.

Using data object types specific to a particular purpose has the following

advantages:

The most commonly used attributes are created automatically. E.g. using

the Jalousie data object type to represent venetian blinds will

automatically create attributes “Slats / Close/Stop”, “Set Slat Position”, …

Because the generic data object is generic, it does not have default

attributes. Here all attributes have to be created manually.

Specific data objects types are linked to a matching default visualization

widget for a graphical visualization schema in the SystemTera.Manager.

This speeds up configuring the visualization later on.

Using appropriate attributes predetermines display units for the

visualization. For example, using the temperature value attribute of a

temperature sensor data object will default to a display with the unit “°C”

in the visualization later on. If you use generic numbers, all display units

have to be configure manually later on.

Some attributes are automatically selected as a default for matching

visualization widget properties.

The following table lists all data object types.

Group Data Object

Type

Comment

General

Purpose

Generic data

object

This type of data object can be used for

any purpose.

Building

Automation

Electrical load Use for any electrical load which is just

turned on or off, with an optional separate

status.

Page 50: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 47 -

Group Data Object

Type

Comment

Jalousie Use for venetian blinds including up/down

movement, control of slat angle, absolute

positioning and position status feedback.

Light Use for lights, normal, dimmed or colored.

Building

Automation,

Heating

System

Temperature

sensor

Use this to represent any form of

temperature sensor which returns readings

in °C.

Metering

Electric meter Use this to represent an electric meter

which measures energy in kW/h and

optionally other attributes such as power,

voltage, …

In combination with cloud data storage

readings can be used in a separate meter

management section of the

SystemTera.Manager.

Gas meter Use this to represent a gas meter which

measures volume in m³ and optionally

other attributes such as power, voltage, …

In combination with cloud data storage

readings can be used in a separate meter

management section of the

SystemTera.Manager, along with functions

to calculate energy from operating m³.

Heat meter Use this to represent a heat flowmeter

which measures energy in kW/h and

optionally other attributes such as

temperature and flow.

In combination with cloud data storage

readings can be used in a separate meter

management section of the

SystemTera.Manager.

Pulse counter Use this to count pulses. Can be used to

either determine e.g. windspeed as a

function of pulses per time or to

determine energy consumption as a

function of pulses from a meter. In this

case the meter management section of the

Page 51: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 48 -

Group Data Object

Type

Comment

SystemTera.Manager can be used to input

manual readings of absolute meter values

and to define the energy per pulse.

Heating

System

Boiler Use this to represent a heater, either

electric or burning gas or other

combustible material with an attribute for

modulation (0-100%) and operational

state.

Buffer tank Use this to represent a buffer tank for

heated or cooled liquids. Add temperature

attributes as needed.

Burner Use this to represent a separate forced-air

burner which is attached to a boiler.

Manometer Use this to represent a pressure measuring

device.

Pump Use this to represent a pump with

attributes for relative speed (0-100%) and

operational state.

Valve Use this to represent a valve with a

numerically encoded position.

Documenta-

tion only

Automatic

expansion tank See Figure 48

Expansion tank Similar to Figure 48

Heat exchanger Similar to Figure 48

Hydraulic

separator

Similar to Figure 49

Oil tank See Figure 49

Pellets storage Similar to Figure 49

Solar collector Similar to Figure 49

Solar

installation

Similar to Figure 49

Page 52: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 49 -

Group Data Object

Type

Comment

Wood chips

storage

Similar to Figure 49

Refrigeration

System

Cooling Unit Use this to represent a refrigeration unit

with an attribute for modulation (0-100%)

and operational state.

Alerting

Alert Use this object in combination with the

cloud data storage module to send alert

emails or alert text messages.

Warning Use this object in combination with the

cloud data storage module to send

warning emails or warning text messages.

Some data object types are not intended to receive live data from external

devices. They are listed in the group “Documentation only”. They are intended

as an aid for documenting the installation and provide additional properties to

document components used in the installation. See the following figures for

examples.

Figure 48: Properties of an automatic expansion tank

Page 53: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 50 -

Figure 49: Properties of an oil tank

The following table lists the default visualization widgets and the default

attributes of all data object types.

Group Data Object

Type

Default

Visualization

Widget

Default Attributes

General

Purpose

Generic data

object

Data display -

Building

Automation

Electrical load Electric switch Switching status

Jalousie Push-button Jalousie down

Slats Close/Stop

Set Jalousie Position

Set Slat Position

Jalousie Position

Slat Position

Light Push-button Light on

Building

Automation,

Heating

System

Temperature

sensor

Temperature

sensor

Value

Metering Electric meter Electric meter Energy

Page 54: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 51 -

Group Data Object

Type

Default

Visualization

Widget

Default Attributes

Gas meter Gas meter Energy

Heat meter Heat meter Energy

Pulse counter Data display Pulse count

Duration

Heating

System

Boiler Boiler State

Buffer tank Buffer tank -

Burner Burner State

Manometer Pressure gauge Pressure

Pump Pump Rotational speed

Valve Valve Position

Heating

System

Documentation

Automatic

expansion tank

Automatic

expansion tank

-

Expansion tank Expansion tank -

Heat exchanger Heat exchanger -

Hydraulic

separator

Hydraulic

separator

-

Oil tank Oil tank -

Pellets storage Pellets storage -

Solar collector Solar collector -

Solar

installation

Solar installation -

Wood chips

storage

Wood chips

storage

-

Refrigeration

System

Cooling Unit Cooling Unit State

Alerting Alert Electric switch Status

Warning Electric switch Status

Page 55: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 52 -

3.3 Data Sources

3.4 Gateway

3.4.1 Modbus IP – RTU Gateway

A Modbus IP – RTU gateway acts as a router of requests from a Modbus IP

master to multiple Modbus RTU slaves.

To create a Modbus IP – RTU gateway press the button on the line of the

Ethernet interface. Select Modbus IP gateway.

Figure 50

Figure 50 shows the properties of a Modbus IP – RTU gateway.

Name: A name for this gateway. The name does not have a

functional impact.

Description: A description to better document the configuration. The

description does not have a functional impact.

Port: The port at which the gateway listens for Modbus

commands from the server. Values need to be in the

Page 56: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 53 -

range from 1500 to 1599 to let the SystemTera.Server

firewall pass the requests. Each port can only be used

once for all types of Ethernet services in one entire

SystemTera.Server configuration.

Modbus RTU master: In order for the gateway to work, the SystemTera.Server

first needs to be configured as a Modbus RTU master for

the slaves that should be connected via the gateway.

This Modbus RTU master needs to be selected in this

parameter.

3.5 Modules

3.6 Rules

The SystemTera.Server offers a range of rules for implementing custom logic as

part of a configuration. Rules can be created as required. There if no

predetermined set of rules which determines how many rules of which type are

available.

Rules are executed on an event driven basis. Whenever a new value for a data

object attribute becomes available, all rules using this attribute as input will be

executed.

Rules are configured in the same object tree as data objects.

Click on a rule and the rule editor button to open the rule editor. The rule editor

will also show the documentation for the rule and its parameters.

Figure 51: Rule editor button

Parameters with a pink background color are mandatory parameters.

Parameters with a button next to them can be switched between a link to a

data object attribute or a constant value.

Drag and drop an attribute from the tree of data objects to a parameter box to

create a link between a data object attribute and a rule parameter.

Figure 52 shows what the rule editor looks like for the rule if before filling in the

parameters.

If cyclic dependencies between rules or an excessive number of rules cause

continuous CPU overload, the system watchdog will detect this condition after

several minutes and restart the SystemTera.Server without active configuration.

The SystemTera.Manager has then to be used to send an improved

configuration to the SystemTera.Server. This is an important safety mechanism,

Page 57: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 54 -

because in the case of working on a configuration off site it will prevent the

server to become inaccessible due to an error in the configuration of rules.

Figure 52: Rule editor showing the rule „If“

The following table shows the available rules.

Rule Group Rule Comment

Arithmetic

Functions

Linear function �(�) = � ∙ � + �

Polynomial �(��, ��) =����+����∙ �� +

����∙ ��

Pow �(�) = � ∙ ��

Page 58: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 55 -

Rule Group Rule Comment

Maximum

Minimum

Logic

Functions

And Up to 8 inputs

Not

Or Up to 8 inputs

Trigonometric

Functions

ArcCos Inverse Cos

ArcSin Inverse Sin

ArcTan Inverse Tan

Cos

Sin

Tan

Degree to radian

Radian to degree

Building

Automation

Jalousie Automatic

(Smart Actor)

Automated control of blinds based

on the current position of the sun and

the orientation of the blinds. Use this

function for actors which accept

absolute position commands.

Jalousie Automatic

(Up/Down & Stop

Actor)

Automated control of blinds based

on the current position of the sun and

the orientation of the blinds. Use this

function for actors which only accept

up, down and stop commands.

Pulse Switch

Use a signal from a simple switch and

assign different functions based on

short and long operation of switch

Scene control Implement scenes for lights, RGB

lights and blinds.

Timer

Implements a general-purpose timer,

e.g. to control a light which should be

turned off again after a defined time

Page 59: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 56 -

Rule Group Rule Comment

PID Controller

Use this to implement heating control

for individual rooms based on a

continuous valve actuator.

Two Point

Controller

Use this function to do threshold

comparisons on sensor readings and

to implement heating control for

individual rooms.

Conditional

functions

Condition

monitoring

Select one of two values depending

on an attribute being continuously

within a defined range for at least a

specific duration.

If Select one of two values depending

on a simple comparison.

Data

Conversion

Integer to bits

Convert an integer value into 16

individual bits representing the

binary encoding of the integer. Use

this to decode Modbus register

values containing several indepen-

dent flags.

Bits to integer Combine 16 bits to form an integer

value.

Integer to bitfields

Convert an integer into up to 8

numbers representing consecutive

bit fields in the binary encoding of the

integer. Use this to decode Modbus

register values containing several in-

dependent numbers, enumerations

or flags.

Bitfields to integer

Combine up to 8 numbers repre-

senting consecutive bit fields into an

integer.

Combine RGB color Combine a red, green and blue value

to form a single 32bit color value.

Split RGB color

Split an RGB color attribute into

individual values for red, green and

blue.

Page 60: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 57 -

Rule Group Rule Comment

Split RGBW color

Split an RGBW color attribute into

individual values for red, green, blue

and white.

Data History

Delta Delta between the current and the

most recent value of the input

Operating meter

(input above

threshold)

Operating meter

(input below

threshold)

Operating meter

(input is on)

Operating meter

(integral of input

values)

Operating meter

(sum of input

values)

Special

functions

Interpolation Target

Value

Interpolate how long it will take until

a specific target value is reached

LinuxScript Execute a Linux shell script

Pulse Generator Generate a number of pulses

depending on a numeric input

Value Repeater Continuously resend a value after a

defined interval

In depth: all attribute changes caused by one device polling operation (e.g.

periodic Modbus read) will only dispatch final results, not emitting intermediate

results caused by a network of rules depending on several inputs. E.g. reading

two registers from one device containing mantissa and exponent which are then

combined into one floating point number using a rule will only dispatch the final

result and not the intermediate result after the first attribute has been red from

the device.

Page 61: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 58 -

3.7 Alerting

System Tera supports sending of alert messages. Both the condition for sending

an alert and the alert message are configurable.

Alert messages can be sent as an email message or as a mobile phone system

text message (SMS).

To use alerts the SystemTera.Cloud connectivity has to be active. Sending SMS

requires a contract for premium cloud services to be active.

When an alert condition starts or ends, a log entry is created in the

SystemTera.Cloud log for the installation. If an alert condition is currently active,

the SystemTera.Manager shows the status of the installation as .

Only visible to users who have access privileges for all installations in a tenant:

The installation overview shows a separate area with an overview of all

currently active alerts and other installation problems (such as network

connectivity).

For installations with an active alert, the position marker on the map view

will be red.

Figure 53

3.7.1 Alert Configuration

To configure an alert, enter the configuration editor and add an “Alert” or

“Warning” object in the tree of data objects.

Page 62: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 59 -

Figure 54

The alert object contains the following properties:

Name Name of the alert. When the alert is active, this name will

show up on the installation overview. This name will also be

part of the log entry in the SystemTera.Cloud log of the

installation.

Description This is for documentation purposes and has no functional

impact.

Notification type This determines how users will receive a notification, if an

alert is triggered. Possible options are:

Text message Send an SMS

Email Send an Email

Email and text message Send both an Email and an SMS

None The status in the SystemTera.-

Manager installation overview

and the log entries are updated.

No message is sent.

Message The message text which will be sent as part of the Email or

text message.

Requires confirmation Reserved for future use

Remote Monitoring This module has to be selected for alerting to work.

Period [s] This property determines how frequently the current status

is stored in cloud storage. When an alert status changes,

the SystemTera.Server immediately sends the new alert

status to the SystemTera.Cloud. Therefore, this setting does

not have an impact on the reaction speed for notifying the

users.

Page 63: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 60 -

This setting only has an impact on the visualisation of the

alert status as part of a visualisation page when looking at

historic data. Select larger values (e.g. 43200) if this is not

an issue.

After Keep Period This setting determines what happens with values in cloud

storage after the data retention period has expired. The

duration of the data retention period depends on the

tenant to which the installation belongs.

Users with system administrator privilege for a tenant can

change this setting in “Settings”, “SystemTera.Cloud”,

“Keep Duration [Years]”.

Live data Select this module if you want to see the current status in

the visualization via the SystemTera.Cloud.

You will usually want to select this module.

Local access Select this module if you want to see the current status in

the visualization using direct local access to the

SystemTera.Server without going through the SystemTera.-

Cloud.

You will usually want to select this module.

Figure 55

Page 64: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 61 -

Make sure that the remote monitoring module is active. This module can be

turned on and off for all data objects via the property “Remote monitoring” in

the root node of the data objects tree (see the following figure).

Figure 56

If the “Max. number of attribute values per day” is zero, please contact your

SystemTera service partner to obtain premium SystemTera.Cloud services.

When an alert status changes, the SystemTera.Cloud notifies users with the

access privileges for the installation and with the contact details necessary for

the notification type defined in the alert.

SystemTera sends a notification to users with the following access privileges to

the installation with an alert status change:

Installations administrator

Remote monitoring

To receive alert status notifications via email set the following properties for the

user.

Select “Receive alert emails”

Provide the email address in the “Email” property

Page 65: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 62 -

To receive alert status notifications via SMS set the following properties for the

user.

Select “Receive text messages when an alert occurs”

Provide the mobile phone number in the “Phone number” property. The

format has to be “+country code” followed by the number, e.g.

“+436641234567”.

Each user can change these settings for his own user.

Figure 57

3.7.2 Alert settings at the tenant level

A number of settings can be defined at tenant level. These settings are identical

for all installations belonging to one tenant.

Only users with the general permissions system administrator or installations

administrator for a tenant can access the settings screen shown in Figure 58.

The following settings are available:

Send warnings If checked, emails and SMS are sent for alerts and for

warnings. If not checked, emails and SMS are only sent for

alert objects.

Subject This text will be the subject line of any alarm or warning

email.

Content This is a text template which will be copied into any alarm

or warning email message body.

Text message template This is a text template which will be copied into any

alarm or warning SMS.

The following special strings will be replaced by the appropriate content when

generating an alarm or warning SMS email. This affects the settings Subject,

Content and Text message template.

{{Severity}} “Alert” or “Warning”

Page 66: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 63 -

{{Value}} Current value of the alarm object. “completed” if there is no

alarm any more or “occurred” if an alarm has been

detected.

{{Text}} Alarm text configured in the message property of the alarm

or warning object.

{{Name}} Name of the installation.

{{Date}} Date and time of the state change of the alarm or warning

object

{{Street}} Street name of the address of the installation.

{{StreetNumber}} Street number of the address of the installation.

{{ZipCode}} Zip code field of the address of the installation.

{{City}} City field of the address of the installation.

{{Country}} Country field of the address of the installation.

{{Latitude}} Latitude of the location of the installation.

{{Longitude}} Longitude of the location of the installation.

Page 67: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 64 -

Figure 58

3.7.3 Configuration Example: Temperature threshold alarm

This example shows the configuration of a temperature monitoring which will

send an alarm message when a predefined temperature threshold is exceeded.

The temperature is obtained from a PT1000 sensor connected to an analogue

input of the SystemTera.Server. To prevent an alarm from being frequently

triggered and cleared again, a different temperature value is used for triggering

and resetting the alarm. This can be done in one function block using a “Two

Point Controller” function block.

Step 1: Add input and a linked temperature sensor data object

Open the configuration screen for the installation.

On the bus object side, add the PT 1000 (resistive sensor with 1000 Ohm at 0°C)

using the next to “Inputs”.

Set the polling interval for the SystemTera.Server inputs by selecting the “Inputs”

line and change to polling interval to e.g. 0.1 s.

Page 68: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 65 -

On the data objects side, add a temperature sensor using the next to “Data

objects”. Change the name to something appropriate, e.g. “Server room”. If you

would like to create a visualisation for this value later on, select the “Live data”

and “Local access” modules.

Link the value of the PT 1000 sensor to the temperature sensor value by using

drag & drop (see Figure 59).

Figure 59

Figure 60: Result of step 1

Step 2: Average across multiple sensor readings

In the data objects tree, click on the attribute containing the value of the

temperature sensor.

In the section “Aggregation” select type “Minimum” and a number of sensor

readings which should be aggregated to one value for further processing, e.g.

5. In this example, we use “Minimum” instead of “Average” because this will give

Page 69: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 66 -

us a more accurate result. Depending on cable length and absence of shielding

in the sensor cable electromagnetic disturbances will be picked up by the cable

and transport additional electrical energy to the AD converter. Therefore, any

bigger aberrations from the true value will be higher but not lower than the true

value.

Figure 61

Step 3: Add and configure two point controller

Add the “Two Point Controller” function block by using the next to “Data

objects”. You can speed up finding the right function block by typing the first

letters of the name of the function block or data object type (see Figure 62).

Figure 62: Add Two Point Controller

Page 70: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 67 -

Select the two point controller and change to the configuration screen for the

rule by pressing the button.

Figure 63: Rule editor

Use the value from the PT 1000 sensor for the input parameter “Actual Value”

in the rule by using drag and drop to create a link.

Use the button of the “Nominal Value” input parameter to change the

parameter from a linked parameter to a constant. Enter your threshold here.

Optional: If you would like to be able to edit the threshold in your visualization,

create a separate data object (either a generic data object or a temperature

sensor which contains the threshold instead of a sensor reading) with an

attribute for the threshold. Change the startup behavior property to “Last value

before system start”. This will result in any changes to the attribute being written

to the internal SD card of the SystemTera.Server. When the SystemTera.Server

is restarted e.g. after a power loss, the last value will be used to initialize the

attribute. Link this attribute to “Nominal Value” in the two-point controller

instead of using a constant.

Set the property “Hysteresis” to determine the temperature difference the

sensor input has to drop below the threshold to clear the alert again.

Page 71: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 68 -

Set the undercut value to 0 to define what is written to the result of the rule if

the threshold is not exceeded or the temperature has fallen enough to clear the

condition after the threshold has been exceeded. We will use the 0 to reset the

alarm object.

Set the overstepping value to 1 to define what is written to the result of the rule

if the threshold is exceeded. We will use the 1 to trigger the alarm object.

Figure 64

Step 4: Create Alert Object

Add the alert object by using the next to “Data objects”. You can speed up

finding the right object type by typing the first letters of the name of the data

object type (see Figure 65).

Page 72: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 69 -

Figure 65: Add the alert object

By changing the properties of the alert object you can define whether to send

an email, SMS or both, as well as the message that is sent.

If you are not interested in a point in time visualization of historic data, change

the remote period to something large (e.g. 43200 for two values per day). The

change of the alert status will be sent immediately. This value determines how

frequently the alert status is recorded in cloud storage even if the status does

not change.

Use drag & drop to link the status attribute of the alert object with the output

parameter “Result” of the two – point controller rule.

Page 73: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 70 -

Figure 66: Configuration of the alert object

Step 5: Send configuration to server and check what it does

Use the button to save the configuration.

Use the button to send the configuration to the SystemTera.Server. This is

the first point in time in this process where the server actually has to be online.

The entire configuration can be prepared without a physical server being

present.

Once the SystemTera.Server has successfully received the configuration, the

send configuration button will change to green . Now you can use the debug

button to get an online view of the attribute values in the SystemTera.Server

(see Figure 67).

Page 74: Integrator Guide - Revision 2.22.1, März 2018 - SystemTera

- 71 -

Figure 67: Debug mode shows attribute values in separate columns