Den BACnet er en protokol angivet af organisationen ASHRAE (Foreningen af fabrikanter og brugere inden for opvarmning , den ventilations- og klimaanlæg (HVAC eller HVAC)).
Specifikationen af denne protokol er blevet en international standard standardiseret af ANSI og ISO .
BACnet-specifikationen indeholder flere uafhængige aspekter:
En BACnet-netværk og en ansøgning overvågning er begge fuldt objekt- orienterede systemer . På grund af denne iboende objektlogik er det så muligt at integrere dem (få dem til at kommunikere) indbygget uden at gennemgå en konvertering mellem BACnet-objekter og overvågningsvariabler.
Netværksarkitekturen i BACnet-protokollen kan relateres til OSI (Open System Interconnection) -arkitekturmodellen af ISO . Dette er dog en forenklet arkitektur, der kun henviser til lagene: fysisk, link, netværk, applikation.
Lagene: transport, session og præsentation bruges ikke i dette tilfælde.
Netværks- og applikationslagene er underlagt specifikationer, der er specifikke for BACnet-protokollen. Lagene: fysisk og link henviser til eksisterende specifikationer uafhængigt af BACnet:
BACnet lag | OSI-ækvivalent | |||||
---|---|---|---|---|---|---|
BACnet applikationslag |
Applikationslag |
|||||
BACnet netværkslag |
Netværkslag |
|||||
MS / TP |
PTP |
LonTalk |
BVLL |
Bond-lag |
||
ARCNET |
EIA-485 |
EIA-232 |
UDP / IP |
Fysisk lag |
Et BACnet-system består af et sæt sammenkoblede enheder. Denne samtrafik er baseret på flere koncepter:
BACnet-segmentetEt BACnet-segment består af et sæt enheder (enheder), der er forbundet til et eller flere fysiske segmenter (forbundet af repeatere) af samme type. Et BACnet-segment er homogent set fra det fysiske lag.
BACnet-netværketEt BACnet-netværk består af et sæt segmenter, der er sammenkoblet af broer . Enhederne i et BACnet-netværk er homogene set fra linklagets synspunkt.
BACnet inter-netværkBACnet-internetværket består af et sæt BACnet-netværk, der er forbundet med routere . Netværksteknologier (linklag og fysisk lag) kan være forskellige for hvert af BACnet-netværkene.
BACnet-adresseringBACnet-protokollen bruger flere mekanismer til at adressere BACnet-enheder afhængigt af det lag, vi er interesseret i:
For det fysiske lag er enhedsadressering ikke specifik for BACnet og afhænger af den anvendte teknologi. Denne adresse identificeres (set fra netværkslaget) som MAC-adressen . For IP-teknologi er dette f.eks. Sættet med UDP-port + IP-adresse .
For netværkslaget bruger enhedsadressering netværksnummeret + MAC-adressesættet . Alle enheder på det samme BACnet-netværk skal tilhøre det samme adressedomæne (eller mellemrum). Hvis et BACnet-system har enheder med samme teknologi (for eksempel BACnet IP), men distribueret i forskellige adresseringsdomæner (for eksempel 192.168.10.X og 192.168.20.X), skal de distribueres i flere BACnet-netværk med et separat netværksnummer for at danne et BACnet internetværk.
For applikationslaget er enhedsadressering baseret på den generelle adresseringsmekanisme for BACnet-objekter (enheden er repræsenteret på netværket via et BACnet-objekt). Adressering af et BACnet-objekt bruger objekttypen + forekomstnummerssættet . Denne adresse kaldes BACnetObjectIdentifier .
Regler for unikhed skal overholdes for at muliggøre entydig adressering af objekter (og derfor enheder):
BACnet-protokolspecifikationsarbejdet begyndte i 1987 på et tidspunkt, hvor IP-teknologi endnu ikke var den universelle netværksteknologi (i det mindste i de fleste områder), som den er blevet i dag.
Integrationen af denne teknologi i specifikationerne for BACnet-protokollen er genstand for et tillæg (bilag J), der specificerer betingelserne for dets anvendelse til denne protokol. Brugen af BACnet over IP-protokollen kaldes generelt BACnet / IP .
Valget af IP-protokol, der blev brugt til BACnet, faldt på UDP. Valget af denne protokol uden garanti for routing er baseret på det faktum, at BACnet-messaging i sig selv integrerer de garanterede routingmekanismer (timeout for modtagelsesbekræftelse og flere forsøg).
Et problem, der er specifikt for BACnet-protokollen, stilles til brug på offentlige eller virksomheds IP-netværk. Dette problem er knyttet til brugen af det udsendelsesprincip , der er forbundet med visse tjenester i BACnet-protokollen. Da udsendelsesmeddelelser generelt filtreres af udstyr i netværk, der ikke er strengt lokale, er der givet et specifikt svar på dette problem. Dette svar er baseret på forestillingen om BBMD (BACnet / IP Broadcast Management Device).
Begrebet BBMD svarer til en funktion af styret udbredelse af udsendelsesmeddelelser. En BBMD-funktion skal være til stede på hvert af netværkssegmenterne, som skal være forbundet til et andet segment via en enhed, der filtrerer udsendelsesmeddelelserne. Denne funktion af netværkslaget er baseret på konfigurationstabeller (BDT og FDT) for at videresende, til fjernnetværk, de udsendelsesmeddelelser, der sendes af de lokale enheder, og generere på det lokale netværk de udsendelsesanmodninger, der sendes af netværkene.
Applikationslaget af BACnet er i det væsentlige baseret på definitionen af et sæt objekter, der håndteres gennem et netværk af et sæt tjenester.
Begrebet objekt er en grundlæggende forestilling om BACnet-protokollen. Objekterne bruges på den ene side til at repræsentere den information, der styres af enhederne og udveksles gennem protokollen, og på den anden side til optimal styring af visse tjenester eller applikationsfunktioner.
For BACnet-protokollen er et objekt karakteriseret ved en liste over egenskaber og deres værdier. BACnet-specifikationerne definerer et bestemt antal objekttyper (klasser) ved at angive listen og egenskaberne for egenskaberne for hver type. Nogle egenskaber kræves for at et objekt skal være i overensstemmelse med en typedefinition, andre er valgfri. En BACnet-enhedsbygger kan tilføje egenskaber, der er specifikke for den, til standardobjekter, og den kan også definere sine egne objekttyper.
Identifikationen af et objekt (dets adresse) i et BACnet-system involverer to obligatoriske (uafhængige) egenskaber:
Denne egenskab består af sammenkædning af objekttypen og et instansnummer. Værdien af denne egenskab skal være unikt for systemet, hvis det er en anordning objekt , eller skal være entydigt i den enhed, der administrerer det til andre objekter.
Denne egenskab er en streng, der skal overholde de samme unikke regler som Object_Identifier-egenskaben.
Typedefinitionen af et objekt er angivet med den krævede Object_Type-egenskab.
I alle typer standardobjekter af BACnet bruges et bestemt antal af dem til at styre systemets elementære data. Disse objekter er: Akkumulator, Analog input, Analog output, Analog værdi, Binær input, Binær output, Binær værdi, Multi-state input, Multi-state output, Multi-state værdi.
Generelt er funktionen af disse objekter at repræsentere værdien af et dataelement gennem deres egenskab Present_Value . De kan omfatte alarmtilstande og være knyttet til et underretningsobjekt (Notification_Class) for at generere alarmer eller hændelser, når disse betingelser krydses.
Funktionelle objekter understøtter en funktion til at drive egenskaber for andre objekter eller til at oprette resultater lokalt. De funktionelle objekter, der er defineret af BACnet-specifikationerne, er som følger:
Visse funktionelle objekter er mere specielt velegnede til et bestemt erhverv (adgangskontrol, branddetektion osv.):
Andre funktionelle objekter bruges sammen med de tjenester, der tilbydes af BACnet-protokollen:
Der er to typer egenskaber set fra skriveoperationernes synspunkt: kontrollerbar eller ikke-kontrollerbar .
For kontrollerbare egenskaber gør en forestilling om prioritet det muligt at styre værdikræfter i henhold til det prioritetsniveau, der er brugt under skriveanmodningen. En række prioriteter styres af de objekter, der har en kontrollerbar egenskab . Denne tabel har en placering for hver af de 16 mulige prioritetsniveauer. Denne matrix indeholder den sidste værdi, der muligvis er skrevet for et givet niveau. Den værdi, som den pågældende ejendom tager, er derefter den værdi, der er forbundet med den højeste prioritet. Skriveprioritet er specificeret for hver skriveanmodning. En skriveanmodning med værdien NULL frigør det angivne prioritetsniveau.
Applikationslaget i BACnet-protokollen specificerer også et sæt tjenester, der gør det muligt at styre enhederne og objekterne på de enheder, der udgør et BACnet-system. Disse tjenester dækker forskellige aspekter, især:
BACnet-protokollen bruges til at sikre kommunikation mellem de forskellige enheder i et BACnet-system for at opfylde kravene til den samlede drift af en installation. Det bruges også eller endog hovedsageligt til behovet for tilsyn med disse installationer.
Med henblik på tilsyn er de nyttige tjenester i det væsentlige adgang til objekter og deres egenskaber og alarmhåndtering.
Implementeringen af et BACnet-netværk til overvågning udgør problemer, der er specifikke for denne teknologi for traditionel overvågningssoftware.
Disse problemer er hovedsageligt relateret til:
Hvordan man kan give svar på disse problemer, bør være et første valgskriterium for overvågningssoftwaren til et BACnet-system.