BACnet

BACnet

Protokol BACnet

Podporované typy a verzie zariadení


Protokol BACnet (Building Automation and Control Networks) je implementácia štandardu ANSI/ASHRAE 135-2001.
Implementácia bola testovaná na nasledovných zariadeniach:

  • Siemens

    • Desigo PXM20 (ovládacia jednotka, LON interface, BACnet over LON)

    • Desigo PXC22 (riadiaca stanica, LON interface, BACnet over LON)

    • Desigo PXC22-E.D (riadiaca stanica, Ethernet interface, BACnet/IP)

    • Desigo PXG80-N (BACnet router, Ethernet interface, LON interface, BACnet/IP, BACnet over LON)

    • Desigo PXC36-E.D (riadiaca stanica, Ethernet interface, BACnet/IP) - testovaná bola časová synchronizácia

  • Delta Controls

    • DSC-1212E (System controller, Ethernet interface, BACnet/IP)

    • DAC-633 (Application controller, MS/TP interface pripojené k DSC-1212E, ktorý funguje ako BACnet router)

    • DAC-633 (Application controller, MS/TP interface pripojené k Moxa 5250 serial/ethernet prevodníku a nakomunikované priamo ako BACnet MS/TP zariadenie v UDP móde)

    • DAC-1146 - (Application controller, MS/TP interface pripojené k DSC-1212E, ktorý funguje ako BACnet router)

  • Sauter

    • EYK220F001 (automatizačná stanica, Ethernet interface, BACnet/IP)

    • EYR203F001 (univerzálny regulátor, pripojený k EYK220F001)

    • EYR207F001 (univerzálny regulátor, pripojený k EYK220F001)

  • York

    • BACnet MS/TP MicroGateway (komunikačná karta pre chladiče York, RS485 rozhranie, BACnet MS/TP)

  • SE-Elektronic GmbH:

    • E-DDC3.1 (DDC automatizačná stanica, Ethernet interface, BACnet/IP)

  • Klimasoft

Vlastnosti aktuálnej verzie sú:

  • komunikácia v sieťach Ethernet (BACnet/IP) a LONTalk

  • obmedzená podpora MS/TP siete (master-slave token-passing na RS-485): bez automatického vyhľadávania Master staníc

  • podpora BACnet routra (prepojenie medzi BACnet/IP a LONTalk sieťami)

  • čítanie a zápis jednoduchých hodnôt (binárne, celočíselné, reálne, reťazce, dátum, čas atď.) aj ľubovoľných ASN sekvencií

  • podpora pollingového spôsobu čítania dát (správy ReadProperty-Request a ReadPropertyMultiple-Request)

  • podpora zmenového spôsobu čítania dát (voliteľná registrácia pomocou správ SubscribeCOV-Request, resp. SubscribeCOVProperty-Request a následné spracovanie ConfirmedCOVNotification-Request a UnconfirmedCOVNotification-Request)

  • zápis hodnôt správou WriteProperty-Request

  • dynamická zmena adresy meraného bodu pomocou TELL príkazu SETPTADDR (na načítanie hodnôt objektov typu schedule)

  • práca s objektmi typu schedule (časové plány)

Protokol BACnet sa pozerá na všetkých účastníkov komunikácie ako na sieťové zariadenia (network devices). Každé sieťové zariadenie obsahuje aspoň jeden (väčšinou práve jeden) objekt typu Device (jeho Object Identifier musí byť unikátny v celej sieti). Tento objekt obsahuje ďalšie objekty zadefinovaných typov (Analog Input, Analog Output, Analog Value, Binary Input, Binary Output, Binary Value, Calendar, Command, Event, Group, File atď.) Zisťovanie objektov - viď popis Request type Who-Is a Who-Has.
Jednotlivé objekty majú vlastnosti (properties), pričom norma definuje pre jednotlivé typy objektov povinné a voliteľné vlastnosti a navyše každý výrobca BACnet zariadení môže implementovať ďalšie rozširujúce vlastnosti podľa potreby.
Správy protokolu BACnet sa týkajú manipulácie s objektmi a ich vlastnosťami. Správy sú definované pomocou ASN.1 (Abstract Syntax Notation version 1) a zakódované pomocou zjednodušenej verzie BER (Basic Encoding Rules - základné kódovanie ASN.1 správ).
Definícia správ obsahuje okrem pevne definovaných položiek aj položky typu 'Abstract Syntax & Notation', čo znamená, že na danom mieste správy môže byť ľubovoľná sekvencia (resp. 'strom'), ktorej význam určuje implementátor. Použitie BER umožňuje parsovanie aj takejto správy s vopred neznámymi položkami. BER definuje dva základné typy položiek (tagov): aplikačné a kontextové. Aplikačné tagy sú preddefinované:

  • Null - prázdna hodnota

  • Boolean - hodnota typu áno/nie

  • Unsigned - kladné celé číslo

  • Signed - celé číslo

  • Real - 4-bajtové reálne číslo

  • Double- 8-bajtové reálne číslo

  • Octet String - postupnosť znakov

  • Character String - znaková sada + textový reťazec

  • Bit String - postupnosť bitov

  • Enumerated Value - vymenovaný typ

  • Date - dátum

  • Time - čas

  • Object Identifier - identifikátor objektu (32-bitové číslo, skladá sa z 10-bitového čísla typu-Object Type a 22-bitového čísla inštancie-Instance)

Kontextové tagy sú závislé na kontexte (na mieste v správe). Bez znalosti kontextu (popisu správy, ktorá sa parsuje) je možné zistiť, že na konkrétnom mieste sa nachádza kontextový tag č. 5 s dĺžkou 4 bajty, ale je potrebná dodatočná informácia, či je to Unsigned, Signed, Real, Bitstring alebo iný typ hodnoty.
Okrem jednoduchých aplikačných a kontextových tagov môžu byť vlastnosti aj komplexné:

  • Sequence - postupnosť, ktorá sa skladá z ďalších vlastností (jednoduchých aj komplexných), tieto sú buď povinné alebo voliteľné. Príklad:

  • Sequence of - postupnosť N-tíc vlastností

  • Choice - jedna z N možností

Comments