Nastavení BACnet klienta
BACnet (Building Automation Control Network) je komunikační protokol, navržený pro použití v systémech řízení budov. Domat IDE u vybraných platforem obsahuje jak BACnet server, tak BACnet klient. Driver BACnet pracuje jako BACnet klient - je schopen číst a zapisovat data na server, kterým může být cizí zařízení, jako VZT jednotka, zabezpečovací systém atd. Pro integraci dat z Domat RT do nadřazeného systému (SCADA) použijte BACnet server. BACnet klient se používá pro integraci cizích systémů na automatizační úrovní - "do PLC".
Podporované platformy
Podporované hardwarové platformy jsou tyto:
- mark220
- mark320
- markMX
- mark220LX
- mark320LX
- mark520
- markMX.2
- markMX.3
- markMXL
- IMIO110.2
- IMIO105.2
- ICIO205.2
- Windows RT
- wall - všechny typy
Na ostatních platformách není BACnet klient podporován. BACnet standard popisuje několik komunikačních médií, jako UDP/IP, Ethernet, RS485 (MS/TP), LON atd. Domat využívá pro přenos protokol UDP/IP na sběrnici Ethernet. (Nezaměňovat s druhým způsobem, BACnet over Ethernet, který pro adresování nepoužívá IP adresy, ale MAC adresy síťových karet.) Linku RS485 tedy aktuálně použít nelze, pro komunikaci se zařízeními BACnet MS/TP je nutné nasadit BACnet router jiného výrobce.
Typy objektů a vlastností BACnet a jejich mapování na proměnné Domat
Driver je psán tak, že umožňuje volné přiřazování vybraného typu a instance objektu a jeho vlastnosti (Property) na proměnnou Domat IDE. Je možné vybrat libovolný typ i vlastnost včetně vlastností specifických pro výrobce (vendor-specific), protože v parametrech proměnné lze zadat i "uživatelskou" (specifickou) vlastnost jako číslo. Při přiřazování je nutné respektovat datové typy tak, aby typ proměnné v IDE odpovídal typu vlastnosti BACnet objektu. U běžných typů objektů, jako Analog Input, Multistate Value atd. nenastává problém, protože u nich se obvykle používá vlastnost Present Value (85). V případě jiné vlastnosti je nutné ověřit její datový typ podle standardu BACnet a v mapování proměnné zvolit správný typ hodnoty a index pole, který určuje, která část dat bude mapována. Komplexní objekty typu Schedule tímto způsobem na časové programy v Domat IDE mapovat není možné. Koncept integrace toto ani nepředpokládá: editovatelné objekty jako týdenní programy by z BACnet serveru měly být integrovány přímo do HMI, tedy např. programu SCADA.
Nastavení v Domat IDE
Nejprve je nutné založit a nastavit komunikační kanál. Ten bude mít protokol BACnet a Linkový protokol UDP. Do kanálu vložíme zařízení (device). To pak bude obsahovat jednotlivé datové body.
Vlastnosti zařízeníNázev - jméno zařízení pro lepší orientaci v projektu, bude součástí vygenerovaného jména proměnné Povolit - pro řádnou funkci musí být zařízení povoleno. Nastavením False je zablokováno a při kompilaci se neuvažuje. Rozšíření zařízení - v této verzi se nepoužívá Pozn. - libovolná poznámka Parametry UDPIP adresa zařízení - adresa BACnet serveru, se kterým chceme komunikovat. Místní port - číslo UDP portu pro odchozí telegramy. Běžně se nechává 0 (automatické přiřazení z rozsahu "volných portů" 49152-65535 podle specifikace IANA), nicméně některé servery vyžadují, aby klient používal standardní číslo portu vyhrazené pro BACnet, tedy 47808. Při potížích ověřte v dokumentaci cizího BACnet serveru. V tomto parametru lze odchozí port nastavit ručně. Port zařízení - číslo UDP portu cizího BACnet serveru. Standardní hodnota je 47808. Při potížích ověřte v dokumentaci cizího BACnet serveru. Pozn. - libovolná poznámka Parametry zařízení BACnet Instance objektu Device - každý server BACnet má jako povinný objekt instanci objektu typu Device. Ten obsahuje jednak obecné informace o zařízení (výrobce, verze firmwaru, popis, název, komunikační parametry - možnosti segmentace, max. délka paketu), jednak seznam všech ostatních objektů, která server obsahuje. Číslo instance objektu Device bývá obvykle 1. Typ síťové adresy - příprava pro případná rozšíření komunikačních možností. Pro BACnet/UDP zvolte Žádný. Pozn. - libovolná poznámka BACnet - parametry pro Žádný Podle typu síťové adresy mohou být vyžadovány další parametry. Pro Žádný nejsou žádné parametry nutné. Definice prototypu Tato sekce se vyplňuje v případě, že chcete z generického zařízení udělat knihovní zařízení, tzv. prototyp. Podle vyplněných parametrů se pak prototyp v knihovně třídí, hledá atd. ID modelu - název prototypu, obvykle typové označení výrobce ID verze přístroje - alfanumerické označení verze přístroje pro případ, že by výrobce uvedl na trh více verzí, mezi nimiž je potřeba rozlišovat ID výrobce - označení firmy výrobce zařízení, obvykle zkratka - používá se pro snadnou identifikaci prototypu v knihovně Zámek pro linkový protokol - nastavte False.Verze prototypu - verze knihovního zařízení Domat; verze se mohou lišit například počtem komunikovaných proměnných. Číslo verze se zadává ve formátu vX_Y, například "v1_0". Stav - Vývoj, Test, Vydání, Zastaralý, Porušený, Nepodporován. Stav je možné nastavit podle toho, do jaké míry je zařízení "rozpracováno" nebo připraveno k plnému nasazení. Tento parametr může ovlivňovat viditelnost zařízení v knihovně. Vývoj - na zařízení se pracuje Test - definice hotova, nutno otestovat v reálné komunikaci Vydání (Release) - zařízení připraveno k nasazení, otestováno Zastaralý - existuje jiná, novější verze zařízení, jejíž použití se doporučuje Porušený - odštěpená verze od hlavní větve, již není udržována Nepodporován - v knihovně je pouze z historických důvodů nebo kvůli kompatibilitě se starými projekty, nenasazovat. Informace o zařízení Volitelně vyplňované údaje. Model - Název přístroje tak, jak ho udává výrobce. Verze - Verze přístroje tak, jak ji udává výrobce. Výrobce - Celý název výrobce zařízení. Cesta kategorie - Text, který určuje cestu ve stromu pro výběr zařízení v knihovně, např. "IRC\Topeni". Jednotlivé úrovně lze oddělit znakem "\. Dalším krokem je přidání komunikační skupiny. Skupina (Group) sdružuje I/O datové body. Klikněte pravým tlačítkem do pracovní plochy Zařízení a vyberte Přidat skupinu.
Vlastnosti skupiny Název - libovolný název skupiny DataPoint.SortOrder - nevyplňujte Interval čtení / zápis - lze nastavit, jak často bude skupina vyčítána nebo zapisována. Pro průběžnou aktualizaci nechte hodnotu 0 ms. Je specifický box - nevyplňovat Typ skupiny - vyberte, zda skupina bude obsahovat proměnné pro čtení nebo pro zápis. Pozn. - libovolná poznámka Parametry skupiny BACnetSkupinová akce - v této verzi pouze Access Object Property Způsob dotazování - zde vybereme způsob, jakým budeme vyčítat/zapisovat hodnoty v rámci jedné zprávy
- Single property - slouží pro čtení/zápis jedné vlastnosti jednoho objekt
- Multiple property- slouží pro čtení/zápis více vlastností více objektů
Zápis pouze při změně - u skupiny pro zápis nastavte na TruePozn. - libovolná poznámka
Ve skupině již můžeme definovat jednotlivé I/O datové body s vyplněnými parametry pro komunikaci BACnet. Datové body v rámci jedné skupiny se komunikují v jednom dotazu, což může zefektivnit komunikaci. Pokud by ale byla skupina příliš velká, může dojít k překročení max. délky telegramu (APDU), kterou je protistrana schopna akceptovat. Doporučujeme definovat cca. 20 datových bodů ve skupině.
Pozor:
Maximální počet proměnných v zařízení je cca. 150. Pokud nastanou problémy s komunikací, zkuste zmenšit počet proměnných v zařízení, resp. rozdělit proměnné do dvou zařízení.
Klikněte pravým tlačítkem do pracovní plochy Zařízení a vyberte Přidat datový bod. Vyplníme jeho vlastnosti.

Následně projekt zkompilujeme a vygenerované proměnné můžeme použít v programu FUPLA nebo ST stejně jako jiné globální proměnné.