Часто задаваемые вопросы по BACnet
Майкл Ньюман,
Экс-председатель комитета ASHRAE SSPC 135, член правления Международной BACnet Ассоциации (BI)
Cornell University (Ithaca , New York, USA)
*Примечание от Головина А.А.: эта статья была подготовлена в 1998 году. За прошедшее с тех пор время протокол BACnet достиг значительного прогресса по многим направлениям. Поэтому, если у Вас после прочтения статьи возникли какие-либо вопросы, прошу обращаться ко мне напрямую.
Что такое BACnet?
BACnet – это протокол обмена данными для систем автоматизации и управления зданиями. Сам протокол представляет из себя набор правил, позволяющих обмениваться данными через компьютерные сети. Этот набор правил имеет вид описанных спецификаций, с помощью которых обусловлено, что именно должно соответствовать протоколу.
Что конкретно попадает под описание спецификаций BACnet протокола?
Все, начиная от того какого типа кабель использовать, и до того как сформулировать стандартный запрос или команду. Что выделяет BACnet, так это то, что его спецификации имеют непосредственное отношение к оборудованию Систем Автоматизации и Управления Зданиями (САиУЗ), т.е. они решают такие задачи, как определить значение температуры, определить режим работы вентилятора или послать тревожное сообщение на насосную установку.
Как может BACnet стандартизировать все эти вещи, ведь каждый производитель имеет свои особенности в оборудовании?
Дело в том, что BACnet предоставляет унифицированный способ обозначения функций любого устройства, обладающего какими-либо функциями. Например, аналоговый и двоичные входы/выходы, расписания, циклы управления и тревоги. Стандартная модель устройства представляет эти общие функции как информацию под названием «объекты», каждый из объектов имеет набор «свойств», которые далее полностью описываются. Каждый аналоговый вход, например, представлен в протоколе BACnet как «объект аналогового входа» ("analog input object"), обладающий набором стандартный свойств: существующее значение, тип сенсора, размещение, ограничение по тревогам и т.д. Некоторые из этих свойств обязательны, а некоторые являются дополнительными. Одно из главных свойств объекта – это его идентификатор (identifier): своего рода цифровое имя, которое позволяет протоколу BACnet безошибочно получать к нему доступ. Так как устройства имеют обозначения общего типа в сети (относящиеся к ним «объекты» и «свойства»), можно легко предположить, что между ними могут передаваться стандартные сообщения.
Хорошо, тогда какие типы сообщений поддерживает BACnet?
Так как BACnet построен на модели «клиент-сервер», сообщения этого протокола называются «сервисные запросы» ("service requests"). С машины клиента посылают сервисный запрос на машину сервера, который впоследствии предоставляет сам сервис и дает отчеты по его результатам клиенту. В настоящее время BACnet поддерживает 35 видов сообщений, которые подразделяются на 5 групп (или классов). Например, один класс содержит сообщения для доступа и управления свойствами объектов, описанных выше. Самый обычный сервисный запрос – «ReadProperty» (считать свойство). Это сообщение приказывает серверу выявить запрашиваемое свойство необходимого объекта и направить его значение обратно клиенту. Другие классы сообщений имеют дело с тревогами и событиями, скачиванием и загрузкой файлов, управлением удаленных объектов и функциями виртуальных терминалов.
Действие BACnet протокола распространяется только на оборудование систем ОВК (HVAC)? Может ли этот протокол быть использован в системах безопасности, охранно-пожарном комплексе, системах освещения и при автоматизации других инженерных систем здания?
BACnet может использоваться во всех этих системах. На самом деле, BACnet уже содержит все необходимое для работы с приложениями не из области систем ОВК (HVAC). Это – возможность читать и записывать двоичные, аналоговые и текстовые данные, составлять график действий, посылать уведомления о событиях и тревогах и т.д.
Тем не менее, разработчики протокола BACnet понимали, что всех этих возможностей может не быть достаточно, чтобы охватить все возможные ситуации и разработали стандарт так, чтобы он предусматривал возможности использования в будущем пока что неизвестного оборудования и приложений в системах автоматизации зданий.
В результате чего, одно из главных преимущества протокола BACnet – это то, что он может быть легко изменен и дополнен. Если, например, некоторый производитель начинает изготавливать устройства с новыми функциональными возможностями, для которых требуются новые средства коммуникации, производитель может добавить новые свойства к существующим типам объектов или создать новый тип объекта, доступ к которому будет обеспечен тем же самым путем, что и к остальным объектам, описанным в стандарте. Такое усовершенствование стандарта только поощряется.
Все постоянно говорят про «открытые системы» и совместную работу оборудования от различных производителей, но я привык иметь дело с одним вендором.
Требует ли BACnet обязательного использования оборудования от нескольких производителей?
Конечно же, нет. BACnet это просто протокол. Он только предоставляет возможность совместить для взаимодействия оборудование от различных производителей, но ни в коей мере не требует этого. Рано или поздно все производители оборудования для САиУЗ, скорее всего, выберут BACnet в качестве своего главного протокола, тогда вопрос с использованием оборудования только от одного производителя отпадет сам собой.
Но тем не менее, я готов согласиться с Вами: я бы предпочел иметь дело с одним, максимум двумя, производителем оборудования. Данная статья предназначена, в том числе, и для производителей оборудования, чтобы они были в курсе дел относительно BACnet.
Как обстоит дело с соединением BACnet систем вместе? Какие варианты организации сети существуют?
Отличный вопрос! Выше я упомянул только объектно-ориентированную модель в BACnet и различные сервисы или типы сообщений. Но ведь для того чтобы это все работало необходимо создать соответствующую среду передачи данных – сеть. Разработчики протокола BACnet потратили очень много времени над этой частью стандарта. Мы остановились на 5 различных опциях, каждая из которых занимает определенную нишу (исходя из соотношения цена/качество). На первом месте Ethernet, самый быстрый способ организации сети: от 10 до 100 Мбит/сек. Но Ethernet также является самым дорогим, исходя из стоимости за каждое устройство. Далее следует ARCNET с 2.5 Мбит/сек. Ethernet и ARCNET оба могут использовать различные физические среды: коаксиальный кабель, витую пару, даже оптоволоконный кабель.
Для устройств с более низкими требованиями к скорости передачи данных, BACnet определяет MS/TP ( master-slave/token-passing) сети, способные работать при скорости до 1 Мбит/сек. Сеть компании Echelon LonTalk также может быть организована на различных физических средах. BACnet также может использовать телефонные линии или EIA-232 для организации работы по dial- up или "point-to-point" (PTP - «точка-точка») протоколам связи. Главное в том, что сообщения BACnet, в принципе, могут быть доставлены через любую существующую сетевую технологию. Все зависит от цены вопроса и необходимой производительности.
Вы упомянули, что BACnet может использовать LonTalk. Значит ли это, что оборудование, которое используется в LonTalk, автоматически сможет общаться с BACnet системами?
К сожалению, нет. LonTalk – это спецификация компании Echelon для современных сетевых технологий ( LAN), но некоторые люди предполагают, что она может быть дополнением к стандарту BACnet. BACnet использует LonTalk как среду, чтобы передавать BACnet сообщения, также, как это делается посредством Ethernet, ARCNET и MS/TP. Недопонимание состоит в том, что компания Echelon имеет свой язык управления оборудованием, который также транспортируется по LonTalk. Для того чтобы LonTalk устройства могли взаимодействовать с другими устройствами и системами, используя язык компании Echelon, должно быть специальное согласование: что сообщения этого языка подразумевают в своем контексте. Чтобы разработать такие соглашения компания Echelon создала ассоциацию LonMark, состоящую из групп специалистов всех направлений, пытающихся добиться конструкторских соглашений о том, как использовать внутренний язык компании Echelon в общем случае для своих приложений.
Суть в том, что языки BACnet и Echelon в корне отличаются друг от друга и устройства, использующие один их этих языков, никогда напрямую взаимодействовать не смогут, но при этом они могут одновременно использовать сеть LonTalk как среду ( LAN).
Мне нравится идея использовать BACnet, но как быть с существующими DDC (прямое цифровое управление) системами? Может ли BACnet помочь связать их воедино?
Иногда – да, иногда – нет. Для того, чтобы BACnet устройство могло передать рабочей станции сообщение для не- BACnet устройства из существующей DDC системы от фирмы «***», Вам придется использовать шлюз. Шлюз – это устройство, которое «понимает» сразу два языка: с одной стороны шлюз понимает BACnet сообщения, с другой стороны понимает сообщения от устройств фирмы «***». Лучше всего, когда шлюзы разрабатываются самой компанией «***», но ведь она может этим и не заниматься.
Что если мои DDC системы находятся на Ethernet, а еще некоторые, скажем, на MS/TP. Существуют ли возможности связать их вместе?
Да. Кроме того, что BACnet позволяет использовать различные сети, он также описывает как применять маршрутизаторы. Маршрутизаторы – это простые устройства, которые позволяют соединять разные сети вместе. Такие сети могу использовать как одну физическую среду, так и разные.
Вы меня совсем запутали. В чем разница между маршрутизатором и шлюзом?
Я Вас в этом не виню. Многие люди путают эти понятия. В BACnet маршрутизатор – это устройство, которое передает сообщение из одной сети в другую, не меняя ни форму, ни содержимое сообщения. Когда используются сети с различными средами, адреса, проверки ошибок – короче говоря, формат сетевых «пакетов» в них могут различаться. Маршрутизатор делает такую переупаковку, также как, например, если Вы захотите письмо, присланное по обычной почте, переслать дальше с помощью курьерской почты FedEx или UPS. В отличие от маршрутизатора шлюз же открывает письмо, переводит его содержимое на другой язык (если это возможно), закладывает его обратно в тот же самый конверт (или другой) и посылает дальше. Конечно же, такой перевод занимает гораздо больше времени и сил, чем просто пересылка сообщений. Поэтому шлюзы более сложные устройства, чем маршрутизаторы.
BACnet маршрутизаторы уже существуют?
Конечно. Еще в 1995 году на демонстрационном стенде, представленном NIST (Национальный Институт Стандартов и Технологий США) в Атланте, у нас были представлены контроллеры, использующие все типы сетей, кроме PTP, и все работало. Чтобы связать их вместе нам понадобились Ethernet-ARCNET маршрутизатор, Ethernet-MS/TP маршрутизатор и Ethernet-LonTalk маршрутизатор. Там же в Атланте, в январе 1996 года на выставке AHR Expo прототипы BACnet устройств взаимодействовали между собой посредством всех возможных сетей для BACnet, кроме PTP. Каждая рабочая станция была запрограммирована, чтобы отображать идентичные графики, также была организована возможность выполнять идентичные управляющие действия, в том числе через три разных операционных системы и четыре типа сетей.
Что такое BACnet Консорциум по взаимодействию при NIST?
Когда BACnet только готовился к публикации, поступили предложения установить BACnet устройства и протестировать их до того, как сам стандарт будет официально опубликован. Разработчики стандарта согласились на это, но требовалось сделать это так, чтобы производители оборудования, которые согласились предоставить свои прототипы для этого проекта не чувствовали какой-либо конкуренции, т.к. проект был предназначен для тестирования и независимой оценки. Также, нам тогда требовалось нейтральное место для проведения тестирования, т.е. никто из производителей оборудования не мог предоставить нам его. К счастью, NIST предложил использовать свою лабораторию в Мериленде. Более того, у NIST был отработан механизм, известный как «Соглашение по сотрудничеству в исследовании и разработке», который позволял нам организовать тестирование и защищал частные интересы каждой из сторон. В консорциум вошли 20 членов, 17 из которых были производителями оборудования.
А что насчет сертификации в BACnet? Будет ли NIST проводить сертификацию оборудования на соответствие BACnet?
На текущий момент сертификация в BACnet все еще не решенный вопрос. Хотя все согласны, что это крайне необходимо. NIST точно не будет заниматься вопросами сертификации, также как и ASHRAE. В целом необходимы две вещи: методология тестирования на соответствие и договориться, кто будет ответственным за выдачу сертификатов.
*Примечание от Головина А.А.: уже после написания данной статьи была создана BTL – тестовая лаборатория по BACnet , которая является частью BMA – Ассоциации производителей оборудования для BACnet , и именно BTL занимается тестированием и сертификацией BACnet оборудования на совместимость. BTL разработан стандарт ASHRAE Standard 135.1P, который является дополнением к стандарту BACnet. Подробнее о BTL: http ://bacnetassociation .org/btl/
Говоря о соответствии, что Вы можете сказать о составлении спецификаций для систем BACnet?
Во-первых, в спецификации Вы должны четко определить, какие сетевые функции Вам необходимы. Например, если Вы хотите, чтобы Ваши панели управления могли включать и выключать оборудование по дате и времени, эта задача абсолютно не требует какой-либо сетевой функциональности. Но если Вы хотите управлять расписанием контроллеров с помощью удаленной рабочей станции, тогда и рабочая станция и полевая панель должны поддерживать соответствующие BACnet особенности, касающиеся объектов и сервисов. Просто составьте перечень задач, которые Вам необходимо будет решить с использованием сети (задачи, связанные со временем; требования к оповещению о тревогах и событиях) какие задачи Вы хотите разделить между устройствами, но главное, чтобы все задачи были выполнены на BACnet.
Что такое PICS?
PICS – это «подтверждение соответствия применения протокола» («protocol implementation conformance statement»). В основном это лист спецификаций BACnet, описывающий возможности устройства. Каждое BACnet устройство должно иметь это. Данная спецификация содержит общее описание продукта, детальное описание BACnet возможностей продукта, информацию о том, какие сетевые опции возможны и еще некоторые вопросы, касающиеся наборов символов и специальных функциональных возможностей. PICS дает возможность оценить какими возможностями обладает устройство. Также, тот кто составляет описание PICS может заложить в спецификацию, какими способностями должно обладать устройство для определенной работы.
Как ведется работа внутри комитета ASHRAE?
Комитет SSPC 135 постоянно трудится над доработками и расширениями к стандарту. Мы стараемся улучшить работу BACnet через Интернет (IP). Постоянно ведется работа по упрощению составления спецификаций в BACnet. Другие рабочие группы курируют разработку новых направлений. Разработчики стандарта пытаются создать новые макро-объекты ("macro objects"), чьи свойства были бы параметрами, необходимыми для мониторинга и управления некоторыми крупными устройствами (например, тепловым насосом, чиллером или приточной установкой).
Что еще нового происходит в области BACnet?
Кроме работы комитета ASHRAE SSPC 135, несколько демонстрационных проектов с использованием BACnet находятся в работе. Один из такие проектов – реконструкция федерального здания Phillip Burton в Сан-Франциско. Особенность этого проекта – его масштаб и сложность. Он включает в себя более 1000 контроллеров от 4 различных производителей, несколько приложений, включая контроль управления светом и интерфейс связи с местной электро-снабжающей организацией.
Также, идет международное продвижение стандарта. BACnet был выбран Европейским комитетом по стандартизации CEN TC 247 как предварительный европейский стандарт для САиУЗ. Международная организация по стандартизации ISO TC 205 тоже рассматривает BACnet, как стандарт ISO. Все это очень замечательно, учитывая, что BACnet был опубликован всего лишь в январе 1996 года.
* Примечание А . В . Фрейдмана
В настоящее время протокол BACnet признан как международный стандарт ISO 16484-5 (Building automation and control systems -- Part 5: Data communication protocol), а спецификация о проверке на соответствие этому протоколу стала проектом стандарта 16484-6 (Building automation and control systems -- Part 6: Data communication -- Conformance testing). Подробнее о семействе стандартов ISO 16484 см. на сайте http ://www .iso .org .
Хорошо. А существуют ли реально установленные и используемые BACnet системы сегодня?
Определенно, да. Конечно, тяжело оценить их общее число, но консорциум NIST считает, что уже существует более 4000 BACnet проектов. Приблизительно, одна треть из них – это мульти-вендорные проекты. Большинство проектов расположено в США, но также и в Канаде, Мексике, Бразилии, Германии, Швейцарии, Великобритании, Гонконге, Сингапуре, Австралии и Тайване. Не удивлюсь, если проектов окажется больше, чем я мог о них знать.
Когда можно ожидать больше BACnet продуктов?
Конечно, это один из главных вопросов. Но здесь немного видится ситуация «яйца и курицы»: производители оборудования очевидно ускорят разработку новых продуктов, если они увидят растущий спрос от потребителей, а потребители возможно увеличат спрос на BACnet продукты, если таковых будет больше представлено на рынке. Если Вы пользователь, самое лучшее, что Вы можете сделать – это выразить Ваш интерес в BACnet продукции местным производителям оборудования.
Где я могу найти дополнительную информацию о BACnet?
Вы можете прочитать в журнале HPAC, журнале ASHRAE и в других публикациях, можете заказать в ASHRAE отпечатанную копию стандарта BACnet (или на CD), посещайте семинары и курсы. Не пропускайте информационные материалы от производителей оборудования. Многие из них публикуют общую информацию про BACnet в своих брошюрах вместе с конкретным описанием своего оборудования. Также существует книга «Прямое цифровое управление (DDC)», написанная мною. В нем есть много информации по фундаментальным основам передачи данных и их применение к BACnet.