# BACnet

BACnet (Building Automation and Control Networks) ist ein Netzwerkprotokoll für die Gebäudeautomation. Es ist durch ASHRAE, ANSI und als ISO 16484-5 standardisiert. Zur interoperablen und gewerkeübergreifenden Kommunikation existieren Gateways, die BACnet-seitige Kommunikationsteilnehmer mit anderen Feldbussystemen und -protokollen koppeln (bspw. DALI, KNX oder LON).

## Entwicklung

BACnet wurde und wird unter der Schirmherrschaft der American Society of Heating, Refrigerating and Air-Conditioning Engineers (ASHRAE) entwickelt. Die Entwicklung begann im Juni 1987, um einen einheitlichen firmenneutralen Standard für die Datenkommunikation in und mit Systemen der Gebäudeautomation bereitzustellen. BACnet wurde im Jahr 1995 ANSI/ASHRAE-Norm 135. Im Januar 2003 wurde BACnet ISO-Norm 16484-5.

## Konzept

BACnet gewährleistet Interoperabilität zwischen Geräten verschiedener Hersteller, wenn sich alle am Projekt beteiligten Partner auf bestimmte von der Norm definierte BIBBs einigen. Ein BIBB (BACnet Interoperability Building Block) definiert, welche Services und Prozeduren auf Server- und Client-Seite unterstützt werden müssen, um eine bestimmte Anforderung des Systems zu realisieren. Das zu einem Gerät gehörende Dokument PICS (Protocol Implementation Conformance Statement) listet alle unterstützten BIBBs, Objekttypen, Zeichensätze und Optionen der Kommunikation auf.

## Beschreibung

Die Norm definiert eine Reihe von Diensten (Services), die zur Kommunikation zwischen Geräten der Gebäudeautomation verwendet werden. Diese Dienste gliedern sich in verschiedene Gruppen:
* Gemeinsame Datennutzung,
* Alarm- und Ereignisverarbeitung,
* Verarbeitung von Wertänderungen,
* Geräte- und Netzwerk-Management usw.
Die Norm definiert über 60 verschiedene Objekttypen, unter anderen:
* Gerät (Device),
* Analoger Eingang (Analog Input), Digitaler Eingang (Binary Input), Mehrstufiger Eingang (Multi-State Input)
* Analoger Ausgang (Analog Output), Digitaler Ausgang (Binary Output), Mehrstufiger Ausgang (Multi-State Output)
* Analoger Wert (Analog Value), Digitaler Wert (Binary Value), Mehrstufiger Wert (Multi-State Value)
* Benachrichtigung (Notification-Class), Ereignisdetektion (Event Enrollment), Zustandslose Ereignisse (Alert Enrollment), Weiterleitung von Ereignissen (Notification Fowarder)
* Trendaufzeichnung (Trend Log, Trend Log Multiple),
* Kalender (Calendar),
* Zeitplan (Schedule),
* weitere: Zählereingang (Accumulator), Programm (Program), Regler (Loop) usw.
BACnet definiert eine zusammengefasste 4-Schichten-Kommunikation, die folgende Alternativen für die Schicht 1 und 2 bietet:
* PTP (Point-To-Point) über RS-232, Datenrate 9,6 kbit/s bis 56,0 kbit/s
* MS/TP (Multidrop Serial Bus/Token-Passing) über RS-485 auf Twisted-Pair-Kabeln mit 9,6 kbit/s bis 115,200 kbit/s (Gemäß neuer Benennung in Addendum ce zum ANSI/ASHRAE Standard 135-2020)
* ARCNET (ATA 878.1)
* Ethernet (ISO 8802-3)
* BACnet/IP
* BACnet/IPv6
* BACnet/SC (Secure Connect, über TLS-gesicherte WebSockets, IETF RFC 6455)
* LonTalk (ANSI/EIA709.1, ISO/IEC 14908.1)
* ZigBee
Hier ein Beispiel für die das OSI-Modell von BACnet/IP:
* BACnet Application Layer (Schicht 7, Anwendung)
* BACnet Network Layer (Schicht 6, 5, 4, 3, Vermittlung)
* BACnet Virtual MAC Layer (VMAC) (Schicht 2, Sicherung, für BACnet MAC Adressen mit mehr als 6 Byte: ZigBee, IPv6, BACnet/SC)
* BACnet Virtual Link Layer (BVLL) (Schicht 2, 1, Sicherung und Bitübertragung)
Die Norm kann bei der ASHRAE bezogen werden. Addenda zur jeweils aktuellen Norm können über die Website der ASHRAE heruntergeladen werden. Auf der Website der BACnet Interest Group Europe gibt es Einführungstexte und weiter gehende Informationen zur Norm, Begriffsdefinitionen, Hilfen zur Ausschreibung usw.