How to Collect Data via BACnet of IoT Gateway?
BACnet is a communication protocol used in building automation and control systems. It’s designed to link various devices and systems, such as HVAC, lighting, access control, and fire detection systems, allowing them to communicate with each other effectively. It plays an important role in the IoT ecosystem, particularly for smart buildings and automation systems.
Bivocom IoT Router&Gateway can support BACnet by allowing BACnet devices to communicate with other IoT devices (like sensors, cameras, and smart appliances) . This document will demonstrate how to collect data via BACnet using Bivocom Router&Gateway.
*Since BACnet is not a standard feature, if the end user has requirements for BACnet, you can share your specific demands with us, our team can provide customized service for your application.
What you need to prepare?
- BivocomIoT Router&Gateway with customized firmware
- VTS Simulator(Work as BACnet Client)
- Yabe(Monitor and visualizeBACnet device)
BACnet Client Configuration
In this case, I use VTS simulator to work as BACnet client, which can simulate BACnet data. If you have a real BACnet device, you can skip this step.
- Device Configuration
- Click Edit -> Devices, set a device name and client instance as you wish.
- Add new Object, there are multiple types of object, select a type accordingto your needs, then input an instance.
*Note: If you add two or more objects with same type, the instance should be different.
- Select a description of this object.
- Select a data type, then input data value as you wish.
- Port Configuration
- Click Edit -> Ports, add a new port for communication. Select the specific device name just added. In this case, the BACnet client is communicated via TCP/IP, the interface should be your localhost IP.
Gateway Configuration
Login the WEBUI through LAN IP, default username and password are “admin”.
- Basic Setting
- Click Data Collect -> Basic Setting, enable “Data Collect”feature, set the Collect and Report Period according to your needs. After setup, click “Save&Apply”.
- BACnet Setting
- Click Data Collect -> BACnet Setting, enable “BACnet Service”, set a unique BACnet Router Name and Router ID.
- Click “Scan”button, the router will start to scan all the BACnet devices and objects in the same LAN network. Then click “Refresh” button, it’ll show all the device list. These devices are scanned from my VTS simulator.
- Add BACnet collection rule according to the above device list. BACnet Device ID is the client ID of BACnet device. Each type has a unique type ID, you can add different rule for each type. Set a data reporting center according to server setting. Click “Edit”button, you can configure the detailed parameters for this rule. After setup, click “Save&Apply”.
- Server Setting
- Click Data Collect -> Server Setting, enable Server 1 for BACnet server, the gateway will work as BACnet Server, then receive data from BACnet client.
- The BACnet data can also be uploaded to the server or platform via TCP/HTTP/MQTT, etc. In this case, I’ll send data using MQTT. Enable Server 2 for MQTT, set the following parameters according to MQTT broker. After setup, click “Save&Apply”. Then Connection Status will change to “CONNECTED”.
- Data query
- Click Data Collect -> Data query, it’ll display real-time data collected from BACnet client on this page.
Yet Another Bacnet Explorer
BACnet Yabe is a tool used for monitoring and visualizing BACnet networks. It’s an open-source software tool that allows users to interact with BACnet devices easily.
- Select the specific IP of your local endpoint, which is in your LAN network. Click “Add”button, it’ll search the BACnet devices automatically.
- After searched, it’ll show all BACnet devices in the same LAN network. There is object list in Address Space, you can check the information of each object.
Data Transmission
In this case, I use “MQTT.fx” to work as MQTT client, which can subscribe data from gateway.
- Configure MQTT parameters according to MQTT broker.
- Click “Connect”, then subscribe the public topic set in gateway. It’ll receive data transmitted from gateway.
Comment