СЕТИ
В последнее время вырос спрос на разработки в области специализированного ПО для BACnet и LonWorks. Автор попытался понять, с чем это связано, и, познакомившись с BACnet и LonWorks поближе, обнаружил для себя много интересного. В результате появилась настоящая статья, в которой вкратце рассмотрены особенности сетей BACnet и LonWorks и сделана попытка оценить их перспективы на российском рынке.
Введение
Функциональное назначение любого здания - быть укрытием от внешней среды, создавать комфортные условия для пребывания человека. Первыми техническими средствами, появившимися в зданиях, были системы отопления и вентиляции (камины и печи). Автоматизированные отопительные системы с регуляторами температуры аналогового управления существуют уже более 70 лет. Новая эра в автоматизации эксплуатации зданий началась около 25 лет назад, когда появились микропроцессоры. Они позволили создавать распределенные управляющие и мониторинговые системы отопления, вентиляции и кондиционирования (ОВК). В англоязычной литературе для них закрепился термин HVAC - Heat, Ventilation & Air Conditioning. С помощью этих систем автоматизированного управления стало возможно здания с большими площадями эксплуатировать с помощью относительно небольших служб.
Параллельно с этим развивались программно-управляемые системы охранной и пожарной сигнализации, видеомониторинга, системы управления освещением, вертикальным транспортом (лифтами и эскалаторами), а также телефонные сети и сети передачи данных. Помимо того, что все они были абсолютно автономными и для каждого случая требовали отдельной кабельной проводки, но и с точки зрения управляющих функций системы одного назначения (например, ОВК) разных производителей были полностью несовместимы между собой. В них использовались закрытые фирменные протоколы связи, не предусматривающие никаких общепринятых интерфейсов для взаимодействия с системами других производителей. В начале 90-х годов необходимость стандартизации систем управления для развития отрасли была осознана практически всеми производителями оборудования.
Для выхода из сложившейся ситуации в отрасли, которую можно сравнить со строительством Вавилонской башни, было два пути. С одной стороны, при ассоциации ASHRAE (американское общество инженеров отопительной, холодильной техники и кондиционирования) началась работа по созданию отраслевого стандарта сетевого протокола, в результате которой появился BACnet. С другой - компания Echelon, открыв весьма удачный фирменный протокол LonTalk, привлекла в ряды своих приверженцев большое количество производителей и установила стандарт де-факто.
Протокол BACnet стал американским стандартом ANSI/ASHRAE 135-1995 в 1995 г. В настоящее время он принят в качестве чернового стандарта европейским сообществом и предложен для ISO Technical Committee 205, Building Environment Design.
Позже, в октябре 1999 г., протокол LonTalk был принят официально как американский стандарт ANSI/EIA 709.1-A-1999 Control Network Protocol Specification. Как видно из названия, его официальное признание проходило через альянс электронной промышленности Electronic Industries Alliance (EIA).
Несмотря на то что официально протокол LonTalk, лежащий в основе сетей LonWorks, был признан позже, чем протокол BACnet, хронологически он появился раньше. Поэтому вначале рассмотрим сети LonWorks.
Сети LonWorks
LonWorks представляет собой комбинацию технологии и аппаратно-программных средств для построения открытых управляющих сетей интеллектуальных устройств. Его функциональное назначение позиционируется для следующих приложений:
- автоматизация зданий;
- промышленная автоматизация (АСУ ТП);
- автоматизация на транспорте;
- домашние сети.
Таким образом, область применения сетей LonWorks шире, чем BACnet, изначально предназначенных почти исключительно для автоматизации зданий.
Основу LonWorks составляет протокол LonTalk, разработаный в 1991 г. фирмой Echelon и до 1995-го остававшийся закрытым фирменным протоколом сетевой связи. Интеллектуальная собственность на решения, являющиеся базой для этого протокола, защищена 13 патентами США.
До 1995 г. сети LonWorks могли распространяться только благодаря аппаратной реализации протокола. Имея возможность приобретения специализированного микропроцессорного чипа (Neuron Chip), такие сети, обладающие несомненными достоинствами, могли создавать и независимые разработчики.
Neuron Chip стал доступен c 1991 г., когда по лицензии фирмы Echelon его начали выпускать производители полупроводников Motorola и Toshiba. В настоящее время их выпуском также занимаются лишь две компании - Toshiba и Cypress Semiconductor. Стоимость Neuron Chip не превышает 10 долл.
Каждый Neuron Chip, в котором “зашит” протокол LonTalk, содержит три 8-разрядных микропроцессора, встроенную память и 11 контактов линий ввода-вывода общего назначения. Любое устройство на базе микросхемы Neuron Chip способно обеспечивать получение данных, двунаправленную связь и управление.
Название Neuron Chip отражает важную особенность узлов сети LonWorks - их интеллектуальность. Узлы не подразделяются на Master и Slave, и сеть не требует централизованного управления. Для межузловой связи есть понятие приоритетов сообщений. Благодаря особенностям протокола LonTalk и соответствующей аппаратной реализации обеспечивается надежная многозадачность. Связь оказывается чувствительной к физическому носителю, т. е. в зависимости от наличия канала связи и его состояния выбирается соответствующая скорость передачи данных.
Протоколом предусмотрена идентификация типа устройства и его изготовителя.
В 1995 г. фирма Echelon открыла протокол LonTalk. Когда было опубликовано описание протокола, американская компания Adept Systems разработала код на языке Си для реализации LonTalk на платформе MC68360 фирмы Motorola и предоставила его всем желающим. Он состоит приблизительно из 20 тыс. строк текста, включая комментарии. Была предоставлена также подробная 45-страничная инструкция, описывающая процедуру собственной реализации протокола для сторонних разработчиков. Таким образом, протокол LonTalk отделился от своей первоначальной аппаратной реализации и теперь легко поддерживается любой другой платформой, отличной от Neuron Chip.
Открыв протокол LonTalk, фирма Echelon не сделала, однако, его бесплатным. Лицензирование протокола осуществляется по следующей схеме. Компания-производитель, заинтересованная в выпуске устройств для сети LonWorks, подает заявку и заключает соответствующий договор с фирмой Echelon о резервировании для себя как минимум 16 384 номеров устройств, за что единовременно выплачивает сумму в $2500. При последующем производстве компания-лицензиат дополнительно делает отчисления по $0,15 за каждое устройство.
Протокол LonTalk довольно быстро завоевал признание. Практически сразу после публикации он вошел в стандарт BACnet как опция протокола сетевой связи (подробнее об этом - чуть ниже). Помимо EIA и ASHRAE он официально признается такими организациями, как IEEE, AAR, IFSF, SEMI и CEN. В 2000 г. LonTalk был принят в качестве национального стандарта в Финляндии. Организация, объединяющая фирмы, стимулирующие развитие сетей LonWorks, - Echelon Open System Alliance (EOSA) в настоящее время включает в себя более 100 фирм (37 фирм из Америки, 33 из Европы, остальные из Азиатско-Тихоокеанского региона). Среди приверженцев сетей LonWorks - такие крупные компании, как NTT DATA и Cisco Systems.
Протокол BACnet
Название протокола BACnet представляет собой аббревиатуру Building Automation and Control Networks (автоматизация зданий и управляющие сети). Он разрабатывался комитетом ASHRAE в течение восьми с половиной лет. Первый вариант был принят в 1995 г., а в 2000-м приняли третью редакцию стандарта.
BACnet представляет собой специализированный протокол передачи данных для автоматизации зданий и управляющих сетей. Его главный приоритет сосредоточен на уровне прикладной задачи.
Этим протоколом регламентируются:
- параметры электрических сигналов;
- система адресации;
- способы сетевого доступа (Master-Slave, Peer-to-Peer);
- процедуры проверки ошибок;
- процедуры управления потоком (Flow control);
- последовательность сообщений, система сегментации, наличие контрольных точек;
- формат представления (упаковки, шифрования);
- формат сообщений.
При его разработке вначале был определен вид или модель, по которой каждый производитель может представить схему своего устройства. На следующем этапе был задан стандарт “сообщений” или услуг, который использует модель и выполняет другие общие функции. Затем договорились, что считать нулем и что единицей. Наконец, было принято соглашение о том, какие использовать стандарты физических носителей, передачи данных и сетей. Рассмотрим подробнее составляющие протокола.
Объекты BACnet
Каждый объект в сети BACnet характеризуется набором свойств, которые описывают его поведение или управляют его работой. На рис. 1 представлен пример объекта, соответствующего измеряемой в помещении температуре.
Рис. 1. Пример объекта BACnet
BACnet определяет набор стандартных объектов. В приведенном на рисунке примере параметр “тип объекта” (Object_Type) идентифицирует его как стандартный объект ANALOG_INPUT.
На рис. 2 представлен набор основных стандартных объектов BACnet. Предполагается, что в дальнейшем будут появляться новые стандартные объекты. Кроме того, стандартом оговорено допущение на использование разработчиками своих собственных объектов, а также способы взаимодействия с ними устройств сторонних производителей.
Рис. 2. Стандартные объекты BACnet
Любое устройство в сети BACnet описывается в виде набора стандартных объектов. При этом количество одинаковых объектов, составляющих устройство, не ограничено. Пример такого устройства приведен на рис. 3.
Рис. 3. Пример модели физического устройства при
описании с помощью стандартных объектов BACnet
Стандартом BACnet заданы следующие классы прикладных задач, которые выполняют устройства:
- генерация тревог и событий;
- организация доступа к файлам;
- организация доступа к объектам;
- управление удаленным устройством;
- организация виртуального терминала.
Эти классы прикладных задач описаны набором услуг (Services), которые выполняются определенным классом задач. Например, для класса прикладных задач “доступ к объекту” заданы следующие услуги: ReadProperty, ReadPropertyConditional, ReadPropertyMultiple, WriteProperty, WritePropertyMultiple, CreateObject, DeleteObject, AddListElement, RemoveListElement.
Такая подробная регламентация позволяет представить все многообразие устройств и решаемых ими задач в сети BACnet. И хотя из-за этого, с одной стороны, протокол BACnet является довольно громоздким, зато с другой - обеспечивается его мощь и гибкость при реальной работе сети. Как заметил один из активных участников разработки протокола: “BACnet - худший протокол, но он единственный из того, что есть!” - имея в виду, что ни в одной другой отрасли не были разработаны протоколы, описывающие прикладной уровень.
Транспортный уровень
Помимо прикладного уровня BACnet описывает возможные протоколы низших уровней локальной сети. Первоначально он допускал использование сетевых технологий Ethernet, ARCNET, Master-Slave/Token Passing (MS/TP), Point-to-Point (PTP) и LonTalk (см. таблицу).
Характеристики различных сетей передачи данных
Кроме того, последнее дополнение к протоколу 135a определяет понятие виртуальной сети - “Virtual LAN”, которое может быть присуще таким сетям, как TCP/IP, ATM и т. д.
В случае, когда приложение использует лишь один тип “родной” локальной сети BACnet, каждое устройство того или иного производителя может напрямую обращаться к любому устройству другого изготовителя (рис. 4). Таким образом, этот тип ЛВС предусматривает прямую связь “устройство-к-устройству”.
Рис. 4. Взаимодействие устройств BACnet через одну из стандартных LAN
Если приложение представляет собой объединение различных “родных” ЛВС, то связь устройств, находящихся в разных сетях, осуществляется через маршрутизаторы (рис. 5). Маршрутизаторы всего лишь заново упаковывают сообщения BACnet в соответствии со стандартом данной сети.
Рис. 5. Взаимодействие устройств BACnet в различных стандартных ЛВС
Для связи с частными сетями требуется наличие специализированных шлюзов, которые при переупаковке сообщений BACnet должны, кроме того, осуществлять их перевод на язык соответствующего частного протокола (рис. 6).
Рис. 6. Взаимодействие устройств BACnet с устройствами в частных LAN
Для взаимодействия через IP-сети BACnet предусматривает два режима работы: туннелирование IP-сообщений и использование BACnet/IP.
При IP-туннелировании от устройства не требуется понимание протокола IP, большую часть работы с которым берет на себя специализированный маршрутизатор - Annex H Router. Это название обусловлено тем, что выполняемые им функции описаны именно в приложении H стандарта.
При использовании BACnet/IP каждое устройство является полноценным узлом IP. Оно имеет свой IP-адрес, стек протокола IP и всю работу с протоколом выполняет самостоятельно. Сообщения через Интернет устройства передают напрямую, без посредников.
Как уже упоминалось, в последнем дополнении к протоколу 135a вводится понятие “слой виртуального подключения BACnet” - BACnet Virtual Link Layer (BVLL). В соответствии с концепцией BVLL устройство BACnet/IP имеет доступ к инфраструктуре IP, как к любой ЛВС частного типа. Такое подключение называется виртуальным (virtual data link). Оно обеспечивает удобные условия для использования сетей ATM, SONET, Frame Relay, ISDN и других, в том числе и тех, которые могут появиться в дальнейшем. Если передача сообщений между устройствами BACnet/IP через Интернет идет напрямую, то широковещательная передача обеспечивается посредством специализированного устройства BACnet/IP Broadcast Management Device (BBMD). Через BBMD осуществляется также регистрация внешнего по отношению к сети BACnet устройства. Для присоединения “внешнего устройства” к BACnet при использовании BACnet/IP можно воспользоваться услугами Интернет-провайдера (рис. 7).
Рис. 7. Взаимодействие BACnet с “внешним устройством” из Интернета
Можно выделить следующие характеристики протокола BACnet:
- его появление обусловлено в первую очередь потребностью пользователей;
- это специальный протокол для автоматизированных систем в зданиях;
- BACnet основывается на расширяемой объектной модели с гибкой архитектурой;
- он не связан с конкретными технологиями и предусматривает появление новых;
- широкая представительность разработчиков и поддержка производителей гарантируют его быстрое распространение;
- BACnet является общедоступным протоколом, открыт для усовершенствования и поддерживается ASHRAE;
- он может внедряться в устройствах любых размеров и работать в системах любого типа.
BACnet быстро завоевал признание и вызвал интерес во всем мире. В настоящее время его придерживаются более 70 производителей. Он принят в качестве стандарта ANSI/ASHRAE 135-1995 и является европейским черновым стандартом CEN TC247. Кроме того, он с 1997 г. является проектом международного стандарта ISO ЕС 205/WG3 и одобрен организацией NEMA для приложений в области охранных и противопожарных систем.
Заключение
Использование сетей LonWorks и BACnet представляет собой перспективный и экономичный путь построения систем автоматизации зданий, особенно при поэтапной реконструкции, когда вначале, например, строится единая сеть на базе LonWorks, затем внедряется BACnet-совместимая система управления освещением и вертикальным транспортом, затем BACnet-совместимая система управления отоплением и вентиляцией и т. д. Такое поэтапное внедрение систем обеспечивает снижение одномоментно потребных инвестиций и экономию средств.
Какие же проблемы связаны с внедрением этих сетей на российском рынке? Можно выделить три аспекта, которые касаются позиции фирм, имеющих отношение к автоматизации зданий.
Во-первых, сети BACnet и LonWorks мало известны кому-либо в России, кроме представительств иностранных фирм и отечественных системных интеграторов, предлагающих устройства, совместимые с BACnet и LonWorks. Автору не известно пока ни одного российского строительного проекта или проекта по реконструкции, в котором была бы осуществлена интеграция средств управления LonWorks и BACnet от разных производителей. Требуется изучение этих технологий, обучение специалистов. Нужна работа по пропаганде их достоинств, в том числе и в Госстандарте России, которому предстоит голосование по вопросу принятия BACnet в качестве мирового стандарта.
Во-вторых, отечественные системные интеграторы и специализированные проектные организации, занимающиеся внедрением систем автоматизации зданий, должны иметь возможность конфигурирования сетей LonWorks и BACnet для разработки комплексных систем на базе оборудования различных производителей. Им наверняка потребуются соответствующие программы, маршрутизаторы и межсетевые шлюзы. Часто стандартные средства по каким-либо причинам не устраивают пользователей и приходится создавать свои. Разработчикам таких средств предстоит еще набить шишки на этом пути.
Наконец, в-третьих, для повышения конкурентоспособности своей продукции, в особенности на внешних рынках, отечественные предприятия, выпускающие устройства для систем жизнеобеспечения зданий, должны предусматривать системы управления, совместимые с сетями LonWorks и BACnet. Им потребуются соответствующие специализированные контроллеры с поддержкой этих сетей и драйверы прикладных систем мониторинга и дистанционного диспетчерского управления. Здесь, очевидно, также разработчики найдут широкое поле деятельности.
Наличие проблем - не повод для пессимизма, а стимул к работе. BACnet и LonWorks должны способствовать внедрению передовых, экономичных систем автоматизации зданий, что особенно актуально для российских условий, где сложилась очень непростая ситуация в области энергетики.
С автором статьи, заместителем директора НЦ “Науцилус”, можно связаться по e-mail: freydman@nautsilus.rmt.ru.