BACnet Walker

BACnet Walker

ID: uniflow.plugin.bacnetwalker Category: Building Automation Version: v1.2.0 Min Uniflow Version: Uniflow ≥ v1.4.0

BACnet Walker Plugin Reference Manual

1. Overview

Plugin Name: BACnet Walker

Type: Building Automation

Identifier: uniflow.plugin.bacnetwalker

Description

Poll and discover BACnet devices on the network.


2. Technical Architecture

The BACnet Walker plugin acts as a BACnet/IP client and network discovery manager over UDP socket communications. It issues Who-Is broadcast queries across subnet boundaries to discover BACnet devices, reads Object List properties from target controllers, subscribes to Change of Value (COV) notifications, and periodically polls configured object instance properties.

System Interaction & Exposed Catalog Routes

The BACnet Walker plugin operates as an active BACnet IP Client. It periodically polls or registers Change of Value (COV) subscriptions on remote BACnet controllers, extracting object properties and injecting them into the Uniflow catalog.

Catalog Routes & Node Integration

Input Event Triggers (Input Nodes):

  • bacnet.cov_received - Fired when a remote BACnet controller sends a COV notification.
  • bacnet.poll_update - Fired on periodic BACnet property polling completion.
  • bacnet.device_status_changed - Emitted on BACnet device reachability changes.
  • Executable Actions (Action Nodes):

  • bacnet.read_property - Reads a property from a remote BACnet object.
  • bacnet.write_property - Writes a property to a remote BACnet object.
  • bacnet.poll_now - Triggers an immediate manual poll.
  • Architecture Diagram

    VISUAL ARCHITECTURE FLOW DIAGRAM
    Rendering Flow Architecture Diagram...

    3. Configuration Parameters

    The following configuration fields are available in the User Interface for this plugin:

    Configuration SettingDescription
    Bind IP Address (Local)Specifies the bind ip address (local).
    Target UDP PortNumeric value specifying the target udp port.
    Adapter Device ID (WPF App)Specifies the adapter device id (wpf app).
    Poll Interval (ms)Numeric value specifying the poll interval (ms).
    BBMD AddressSpecifies the bbmd address.
    PortNumeric value specifying the port.
    TTL (s)Specifies the ttl (s).
    Enable BBMD RegistrationToggle to enable or disable enable bbmd registration.

    4. Exposed Routes & Data Types

    This plugin exposes catalog fields across the following rule graph nodes:

    Input Source

    The Input Source node reads polled object values from discovered or configured remote BACnet IP/MSTP devices.

    Human-Readable Field NameData TypeDescription
    Remote BACnet Object Point  Double` / `Bool` / `Int32` / `String
    Polled present_value of remote device BACnet object (Analog Input/Value, Binary Input/Value, Multi-state Input/Value).

    Output Target

    The Output Target node acts as an action sink node to write present values to remote BACnet device objects over the network.

    Target NameData TypeAssociated ParametersParameter Data TypeRequiredDescription
    Remote Writable BACnet Object  Double` / `Bool` / `Int32` / `String
    ValueDouble / Bool / Int32 / StringTrueValue payload to send via BACnet WriteProperty request.

    5. Usage Examples

    Scenario A: Remote BACnet Chiller Pressure Polling Triggers Auxiliary Modbus Booster Pump

    Workflow Overview:

    The BACnet Walker polls AnalogInput_4 (Water Pressure) on a remote BACnet controller (Device 1002). When the pressure drops below 1.8 Bar (AnalogInput_4 < 1.8), Uniflow evaluates the polled value and writes a Modbus TCP coil (Coil 3 = True) to activate an auxiliary water booster pump.

    Rule Node Configuration:

    1. Input Source Node: BACnet Walker Poller

  • Device ID: 1002
  • Object: AnalogInput_4 (Double)
  • 2. Logic Filter Node: LessThan

  • Expression: AnalogInput_4 < 1.8
  • 3. Output Target Node: Modbus Client Writer

  • Action Target: Direct Access
  • Type: Coils
  • Address: 3
  • Value: True
  • Logic Flow Diagram:

    VISUAL ARCHITECTURE FLOW DIAGRAM
    Rendering Flow Architecture Diagram...

    Scenario B: High Room Temperature COV Notification Writes Setpoint to Remote BACnet Thermostat

    Workflow Overview:

    When a remote BACnet thermostat sends a COV notification for room temperature (bacnet.cov_received, Temp > 26.0°C), Uniflow issues a WriteProperty request to update the cooling setpoint (AnalogValue_2) on remote device 2005 to 22.0°C.

    Rule Node Configuration:

    1. Event Input Node: BACnet Walker Listener

  • Filter Event: bacnet.cov_received
  • Exposed Schema Fields: DeviceId (Int32), ObjectName (String), Value (String), Timestamp (DateTime)
  • 2. Logic Filter Node: And Condition

  • Expression: DeviceId == 2005 AND Value > 26.0
  • 3. Output Target Node: BACnet Walker Writer

  • Action Target: Remote Writable BACnet Object (bacnet.write_property)
  • DeviceId: 2005
  • ObjectName: AnalogValue_2
  • Value: 22.0
  • Logic Flow Diagram:

    VISUAL ARCHITECTURE FLOW DIAGRAM
    Rendering Flow Architecture Diagram...
    Architecture Flow Diagram — Full Preview