BACnet Configuration in IoTWorX

BACnet Configuration Using the Workbench

Note: The following describes how to configure BACnet settings via the Workbench for IoT projects. The starting point is the Network Discovery tool.

Network Discovery

From the Workbench, you need to expand your IoT project and then browse for the device template and find the BACnet configuration provider.

 

BACnet Provider in the Workbench's Project Explorer

 

It’s possible to discover the devices on each Channel level. So, for example, to browse for the Default Channel, right-click on it and select ‘Network Discovery’.

 

Starting Network Discovery

 

You will be asked to select an IoT Gateway to use as a target.

 

Available Gateways

 

You can switch between the Device Groups and select one of the available gateways. Once it’s selected, you can click on the OK button to continue.

 

A dialog will appear. In this dialog, you can set some filters and start the discovery of the network.

 

Network Discovery Dialog

 

This is the list of filters that can be set before starting Network Discovery:

When you click on the Start Discovery button, a request to the BACnet point manager is sent. The result of the call will populate the grid on the bottom of the dialog.

 

Network Discovery Dialog (with Discovered Devices)

 

For each discovered device, the grid shows:

You can easily filter/sort the results in the grid.

 

You can also select multiple devices (and set Get Properties/Static Binding flag) in one shot through the available context menu.

 

Network Discovery Dialog (Context Menu)

 

At this point, you can select all the devices or a subset of them and proceed with the scanning process. You have basically two options:

This is what you can see when clicking on the Next button:

 

Network Discovery Dialog (Scan Devices)

 

From this section, you can scan the previously selected devices. You can specify several scan options:

Network Discovery Dialog (Scan Devices) – Object Types Filters

 

The collection of available Object Types to be filtered comes from the Object Library.

 

When you click on the Start Scan button, a request to the BACnet point manager is sent. The result of the call will populate the grid on the bottom of the dialog.

 

Network Discovery Dialog (Scan Devices) – Scan Results

 

For each scanned object you can see:

Properties List

You can easily filter/sort the results in the grid.

 

You can also select multiple objects in one shot through the available context menu.

 

Device Scan Dialog (Context Menu)

 

At this point, you can select all the objects or a subset of them and proceed with import operation. You have basically three options:

If you click on the Finish button, the selected options will be sent to the server and a Task will be generated. The task will process the data and will execute the import operation.

 

BACnet Devices Import Task

 

Once the task is completed, all the entities will be now browsable in the project tree.

 

Project Tree After the Import

 

From the task explorer, you can see the log generated during the import process (right-click on the task and select View Log).

 

Task Log

 

Note: The import operation will insert the new discovered entities and update the existing. It also provide a mechanism of collision detection in case of colliding names (for Devices and Objects). Since the operation is executed on a separate task, Workbench is fully available and responsive during the execution.

Channel Root

The Channel Root entity is the top most element in BACnet hierarchy. It contains the available Channels.

 

Channel Root Level in the Project Tree

 

If you double-click on it, a dialog will be opened.

 

Channel Root Dialog

 

In this dialog, it’s possible to configure some settings that are globals for all the available channels. This is the list of the settings:

 

Browsing

 

Show Networks -

Show Object Types -

Additional Browsing Info -

 

Logging

 

Log Level -

Log File Max Size [kilobytes] -

Log File -

 

Statistics

 

Show Statistics -

Allow Subscribe Statistics -

Statistics Polling Rate [seconds] -

 

Global Counters

 

Show Counters -

Allow Subscribe Counters -

Counters Polling Rate [seconds] -

 

Click on the Apply button to apply the changes.

Channels

Under the Channel Root level, we can have multiple Channel entities. Each Channel can contain multiple Networks. There should be always a Channel marked as default. It’s possible to identify it easily since the icon contains a red flag.

 

Channel Level in the Project Tree

 

If you double-click on it, a dialog will open. The dialog contains four tabs to set up different sets of settings:

General Tab

 

Channel Dialog (General Settings)

 

This tab contains the ‘General’ Channel settings. This is the list of the configurable settings:

 

Runtime Settings

 

Local Device ID -

Service Type -

Re-Subscribe COV Period -

Default Polling Rate -

Default Priority -

Default Decimal Places -

This is the Default Channels - True, if the Channel is the ‘default’ Channel.

 

Communication Tab

 

Channel Dialog (Communication Settings)

 

This tab contains the ‘Communication’ Channel settings. This is the list of the configurable settings:

 

Communication Settings

Port Tab

 

Channel Dialog (Port Settings)

 

This tab contains the Port Channel settings. This is the list of the configurable settings:

 

Port Settings

 

Channel Type -

Channel Network Number -

UDP Port -

 

Ethernet Settings

 

Type -

Adapter -

IP Address -

 

Foreign Devices Tab

 

Channel Dialog (Foreign Devices Settings)

 

This tab contains the Foreign Devices Channel settings. This is the list of the configurable settings:

 

Foreign Devices Options

 

Enabled - True if the Foreign Devices are enabled

Time-To-Live -

 

Foreign Devices

 

The grid contains all the available Foreign Devices. For each Foreign Device, the following can be configured:

 

Name - Automatically generated combining the IP Address and the Port

IP Address -

Port -

 

Click on the Apply button to apply the changes.

Networks

Under a Channel, there can be multiple Network entities. Each Network can contain multiple Devices.

 

Network Level in the Project Tree

 

If you double-click on it, a dialog will be opened.

 

Network Dialog

 

The dialog contains some settings that you can configure. This is the list of the settings:

Click on the Apply button to apply the changes.

Devices

Under a Network, there can be multiple Device entities. Each Device can contain multiple Object Types.

 

Device Level in the Project Tree

 

If you double-click on it, a dialog will be opened.

 

Device Dialog

 

The dialog contains some settings that you can configure. This is the list of the settings:

 

Generic Properties

Static Binding

Router Static Binding

Override Settings

Device Counters

Click on the Apply button to apply the changes.

Object Types

Under a Device, we can have multiple Object Types entities. Each Object Type can contain multiple Objects.

 

Object Type Level in the Project Tree

 

If you double-click on it, a dialog will be opened.

 

Object Type Dialog

 

The dialog contains some settings that you can configure. This is the list of the settings:

Click on the Apply button to apply the changes.

Objects

Under an Object Type, there can be multiple Objects entities. Each Object can contain multiple Properties.

 

Object Level in the Project Tree

 

If you double-click on it, a dialog will open.

 

Object Dialog

 

The dialog contains some settings that you can configure. This is the list of the settings:

 

Generic Properties

Override Settings

Click on the Apply button to apply the changes.

Properties

Under an Object, there can be multiple Property entities.

 

Object in the Project Tree

 

If you double-click on it, a dialog will open.

 

Property Dialog

 

The dialog contains some settings that you can configure. This is the list of the settings:

 

Generic Properties

Override Settings

Click on the Apply button to apply the changes.

Libraries

Under the root level, there’s another section available called ‘Libraries’.

 

Libraries in the Project Tree

 

The Libraries level contains two sub-levels:

Property Library

The Property Library is available under the Libraries root level.

 

Property Library in the Project Tree

 

If you double-click on it, a dialog will open.

 

Property Library Dialog

 

In this dialog we can configure the available properties (modify the existings or add / remove new ones). We can have two different kinds of properties: Standard and Custom. The standard properties cannot be added/remove. You can’t even modify them except the Custom Name. The Custom properties are otherwise fully supported (you can add/remove/edit them).

 

For each property, we have these properties:

Click on the Apply button to apply the changes.

Device Templates

The Device Templates level is the virtual root level of the Device templates. It could contain multiple Device Templates. In current version we have only the Default Device Template (we cannot add new templates).

 

Device Templates in the Project Tree

 

Device Template

The Device Template entity is under the virtual root level Device Templates. Currently, we can have only one Device Template (the default one) and there are no configurable properties. It contains multiple Object Type Templates.

 

Device Template in the Project Tree

Object Type Template

The Object Type Template entity is under a Device Template entity.

 

Object Type Template in the Project Tree

 

If you double-click on it, a dialog will open.

 

Object Type Template Dialog

 

The dialog contains some settings that you can configure. This is the list of the settings:

 

Object Type

Vendor Properties

 

The grid contains the list of supported properties for the object type.

 

Click on the Apply button to apply the changes.

Import / Export

It’s possible to export a configuration and import it, using the Import/Export feature provider by Workbench.

Deploy on IoT Gateway

Once the configuration is completed, it’s possible to upload it on a Gateway using the Deploy Device(s) Configuration action, right-clicking on the Gateway itself.

 

Deploy Device(s) Configuration Action

 

The system will export the configuration in the Template in a SQlite database. It will upload it to the device and it will import it in the target configuration database.

 

A task will be generated on the server to execute the action.

 

Running Task to Generate IoT Configuration

 

Once the task is completed, we can see the generated log file with all the details.

 

Task Log File

 

See Also:

BACnet Connectivity in IoTWorX Edge Devices