Веб-службы и BACnet
В настоящее время многие инженеры систем ОВК могут высказаться подобным образом о веб-службах. Они не вполне понимают, что в действительности представляют собой веб-службы, но знают, что это им нужно.
Веб-службы и BACnet®
Адмирал Кинг (E. J. King) был главнокомандующим ВМС США во время Второй мировой войны, под его руководством был проведен ряд крупных компаний, в том числе Битва за Атлантику, а также десантные операции на островах Тихого океана. Обеспечение этих «растянутых» на пространстве операций продовольствием, топливом, боеприпасами, строительными и другими материалами было одним из самых больших достижений в истории по проведению материально-технического снабжения (логистики), поэтому неудивительно, что адмирал Кинг известен своим заявлением о логистике. Удивительно другое — само это заявление. Уходя с совещания у руководителя армии США по личному составу, адмирал Кинг повернулся к помощнику и сказал: «Я не знаю, что за чертовщина эта логистика, но что-то в этом роде мне нужно».
В настоящее время многие инженеры систем ОВК могут высказаться подобным образом о веб-службах. Они не вполне понимают, что в действительности представляют собой веб-службы, но знают, что это им нужно. Общество ASHRAE сделало большое дело, предоставив инженерам возможность пользоваться веб-службами, разработав дополнение к спецификации BACnet®*, которое добавит веб-службы к набору инструментальных средств BACnet.
*BACnet® — протокол обмена данными для систем автоматизации жизнеобеспечения зданий. Разработан Американским обществом инженеров по отоплению, охлаждению и кондиционированию воздуха (ASHRAE) и является зарегистрированным товарным знаком ASHRAE.
Комитет НП «АВОК» «Интеллектуальные здания и информационно-управляющие системы» по согласованию с комитетом ASHRAE SSPC 135 «BACnet committee» стал в 2004 году центром развития BACnet в России.
Материалы о BACnet читайте в журналах «АВОК»: 2003 год — № 1, с. 89, № 4, с. 70, № 5, с. 74; 2004 год — № 2, с. 82, № 3, с. 90, № 8, с. 72.
И теперь самое время задаться вопросом: что же такое веб-службы?
В сборнике определений Webopedia™ (www.webopedia.com) дается определение веб-служб как «стандартизованный способ интеграции веб-приложений при помощи открытых стандартов XML, SOAP, WSDL и UDDI на базе IP-протокола». В этом определении легко запутаться, поэтому сведем его к понятиям, наиболее важным для инженеров систем ОВК.
Веб-службы представляют собой стандартный способ интеграции приложений в сети IP, XML, SOAP, WSDL и UDDI и являются наиболее важными «механизмами», обеспечивающими работу веб-служб, при этом для пользования веб-службами совсем не нужно понимать функционирование этих механизмов.
Когда системы ОВК начали переходить на цифровое регулирование, в них использовались небольшие автономные контроллеры и собственные сети связи. Это было неудивительно, т. к. специалисты использовали их для замены небольших автономных пневматических систем управления.
Цифровые системы были способны на решение гораздо более сложных задач, но это стало возможным только тогда, когда производители объединили эти контроллеры в системы автоматизации зданий (BAS).
Такие системы обладают возможностями мониторинга и управления, значительно превосходящими возможности пневматических систем. Но в отличие от пневматических систем, нельзя легко соединить между собой цифровые контроллеры разных производителей.
Подключение разнородных систем требует досконального знания протоколов связи для обеих систем, «шлюза» или трансляционного модуля, а также интенсивного прикладного программирования.
То же самое наблюдалось, когда инженеры попытались объединить свои системы BAS с системами освещения, безопасности или противопожарными системами.
Разочарованные пользователи обратились к ASHRAE за помощью, и ASHRAE создало BACnet. BACnet обеспечивает решение этих проблем, предоставляя стандартный протокол связи для всех систем зданий. Это в значительной степени упрощает интеграцию оборудования различных поставщиков, использующих протокол BACnet, но BACnet не является единственным игроком на поле.
LonWorks® предоставляет другой стандарт для интеграции систем зданий, MODBUS® предлагает еще один стандарт, а многие поставщики сделали доступными свои собственные протоколы для предоставления дополнительных «стандартов» строительной индустрии.
Иметь много стандартов, конечно, лучше, чем не иметь ни одного, но наличие множества протоколов подразумевает необходимость шлюзов и специализированного программирования.
Проблема обостряется, если необходимо подключиться к компьютеру вне BAS, например, к компьютеру компании — поставщика электроэнергии, которая в реальном времени задает стоимость коммунальных услуг. Имеется немного шансов подключить такой компьютер к какому-либо из стандартных протоколов систем зданий.
Эта проблема касается не только систем автоматизации зданий. Долгое время она досаждала системам транзакций «бизнес для бизнеса» (В2В). Для решения этой проблемы информационно-технологическое сообщество (ИТ) установило стандарт, названный «веб-службы» и предназначенный для обеспечения связи разнородных компьютеров, и этот стандарт получил широкую поддержку.
Для того чтобы продемонстрировать, насколько широкое распространение получили веб-службы, следует указать, что они были приняты в качестве стандарта такими корпорациями и компаниями, как «Microsoft», «Apple», «Sun», «Linux», «IBM» и многими другими. Все они предложили свои собственные инструментальные средства для работы с веб-службами и создали для них собственные оболочки. «Microsoft» назвала свою реализацию такой оболочки — NET, а «IBM» — WebSphere. Но ядром всех этих платформ являются веб-службы.
Веб-службы используются для связи в приложениях «бизнес для бизнеса» в течение нескольких лет и стали уже почти нормой.
Например, Amazon.com использует веб-службы для того, чтобы фирмы-партнеры могли интегрировать продукты Amazon в свои веб-узлы. Фирма-партнер предлагает продукт, но информация о самом продукте, его наличии и т. д. автоматически обновляется на Amazon.com.
Служба Microsoft Passport service при помощи веб-служб предоставляет безопасный способ получения поставщиками услуг, находящихся в Интернете, при наличии соответствующего разрешения, информации по выписке счетов и по отгрузке товаров, которая им нужна для обработки заказов покупателей.
Правительство штата Нью-Мехико использовало веб-службы для создания «портала», т. е. единственного веб-узла, на котором пользователям предоставляется доступ к информации и сервисам многих органов правительства штата.
Рассмотрим, какие преимущества для BAS-систем может дать такое широкое распространение веб-служб и их совместимость со многими программными средствами.
Представим себе возможность встраивания прогноза погоды в алгоритмы управления. Тогда многие системы, например, системы накопления льда, включения котлов, предварительного утреннего охлаждения и т. д. могли бы более эффективно исполнять свои функции, если бы в рамках BAS существовал способ получения в компьютере информации о погоде из Интернета.
В колледжах и университетах часто используются сложные компьютерные системы для ведения расписания использования учебных аудиторий. Очень часто такие расписания распечатываются и передаются оператору системы BAS, который вводит эти расписания в BAS.
Вероятно, было бы разумно, если бы два компьютера могли использовать веб-службы для обмена расписаниями.
Такая информация была бы полезна и для компьютера бухгалтерского учета, т. к. на основании полученного расписания можно было бы определить, какому подразделению следует выставить счет за использование аудитории в определенные промежутки времени, особенно, если система подключена к счетчикам коммунальных услуг, которые регистрируют услуги, потребляемые в каждой аудитории.
Веб-службы могут использоваться не только для такого автоматического обмена данными, но и для чтения и записи данных по требованию, благодаря чему они могут быть полезными для конструирования интерактивных веб-страниц.
Например, многие системы на территории колледжей обладают информацией, необходимой инженерам и техникам, обслуживающим оборудование этих колледжей.
В качестве примера такой информации можно привести данные о потреблении коммунальных услуг, информацию технического обслуживания, данные об исчислениях затрат, а также диаграммы и графики.
Для обслуживающих инженеров необходимо взаимодействие с такими системами, но они не в состоянии изучить пользовательские интерфейсы всех этих систем. Поэтому им нет никакой необходимости даже входить в эти системы для сбора нужных данных.
Веб-службы обеспечивают возможность создать «портал оборудования», интерактивную веб-страницу, в которой собираются данные из всех этих систем и на которой предоставлена сводка наиболее важных для инженеров данных.
Рисунок 1. (подробнее) Портал оборудования использует веб-службы для интеграции данных нескольких систем |
Кроме этого, при необходимости на этой странице можно получить и более подробную информацию (рис. 1). Эти примеры не являются просто гипотетическими плодами фантазии. Уже несколько поставщиков внедрили веб-службы в свои BAS-продукты.
Имеются примеры интеграционных программ, которые уже демонстрировались в разных проектах в разных частях света (рис. 2).
Рисунок 2. На пристани на King Street в Сиднее, Австралия, веб-службы используются для контроля и управления многими системами коммунального обеспечения |
Если поставщики BAS-систем уже предоставляют возможность использования веб-служб, в чем тогда заключается роль ASHRAE? Отвечая на этот вопрос, следует указать, что ASHRAE устанавливает стандартные средства использования веб-служб для интеграции данных оборудования из несовместимых источников. ИТ-сообщество задало стандарты для механизмов веб-служб, но в них ничего не говорится об обмениваемых данных. Без дополнительных стандартов поставщики могут заявлять о поддержке веб-служб, предоставляя для соответствующих интерфейсов произвольное количество данных, используя произвольные структуры данных и предпочтительные для них интерфейсы чтения и записи данных.
Даже если бы поставщики попытались создать удобные интерфейсы веб-служб, крайне малы шансы на то, что два интерфейса будут схожи и совместимы, поэтому для соединения двух разнородных систем все равно понадобится затратить значительное количество времени на специализированное программирование.
Многие специалисты уже много лет назад предвидели эту проблему и начали призывать к созданию стандартной информационной модели.
В ответ на этот призыв ASHRAE собрало данные о возможном использовании веб-служб в системах автоматизации эксплуатации оборудования у инженеров, обслуживающих оборудование, у производителей этого оборудования, в правительственных органах и в университетах и разработало информационную модель.
Эта модель включает в себя типы обмениваемых данных, путь, используемый для нахождения данных, атрибуты используемых обычно объектов данных, таких как аналоговые входы или двоичные выходы. Определяются службы для чтения и записи значений, а также службы, необходимые для получения информации об имеющихся данных или для возврата сообщений об ошибках при сбое выполнения службы.
В стандарте рассматриваются массивы данных и скалярные данные, используемые при обработке журналов трендов.
Поскольку этот стандарт предназначен для работы с системами автоматизации зданий, он был разработан техническим комитетом, ответственным за разработку стандартов сетей автоматизированного управления зданий, т. е. комитетом BACnet.
После утверждения он станет дополнением стандарта BACnet. Это означает, что он также станет стандартом Национального института стандартизации США (ANSI), Европейского комитета по стандартизации (CEN) и Международной организации по стандартизации (ISO). Естественно, стандарт совместим с протоколом BACnet.
Одним из наиболее полезных приложений этого стандарта может быть использование его в качестве стандарта обмена данными между системами автоматизации зданий, использующими различные протоколы. Веб-службы могли бы быть идеальным средством для «верхнего уровня» соединения систем, использующих протоколы BACnet, LonWorks, MODBUS и другие специализированные протоколы.
Соединение при помощи веб-служб устраняет проблемы, связанные с разными скоростями передачи данных, типами проводных соединений, специальными коммуникационными микросхемами, а также другие проблемы, которые могут возникнуть, когда шлюз соединяет системы, работающие с различными протоколами (рис. 3).
Рисунок 3. (подробнее) Веб-службы, употребляемые для интеграции систем BAS, использующих различные протоколы, а также для подключения универсального компьютера по сети Интернет |
Поскольку веб-службы довольно быстро стали стандартным решением для связи приложений B2B, встает вопрос, заменят ли они BACnet, LonWorks и другие протоколы, используемые системами BAS.
Представляется, что по нескольким причинам это маловероятно. Прежде всего, пока еще не разработан набор веб-служб, выполняющих все функции, необходимые для систем BAS.
Оповещение, формирование аварийных сигналов, синхронизация по времени, резервное копирование и восстановление — все эти функции BAS просто не отражены в предложенном стандарте веб-служб.
Несомненно, подобный стандарт мог бы быть разработан, но это был бы в сущности, еще один протокол BAS, борющийся за признание на рынке. Он не был бы протоколом, хорошо подходящим для систем BAS, т. к. накладные расходы, необходимые для реализации веб-служб, были бы вне пределов возможностей большинства контроллеров BAS.
По определению для соединения по IP-сети веб-службы используют XML. IP-сети прекрасно подходят для соединения ПК, веб-служб и других высокопроизводительных компьютеров, но было бы слишком дорого подключать к IP-сети каждый нагревательный блок, распределительные устройства систем с переменным расходом воздуха и вытяжные вентиляторы в здании.
Аналогично, XML хорошо подходит для работы с данными. Он понятен, гибок, имеет хорошую документацию. Указанные характеристики предполагают также, что конструкции этого языка должны обрабатываться на мощном компьютере и пересылаться по высокоскоростной сети, что также превосходит возможности недорогих контроллеров, обычно используемых в небольших элементах оборудования ОВК, таких как в воздухораспределителях систем с переменным расходом воздуха.
Это может быть временным ограничением, т. к. мощность и быстродействие недорогих микропроцессоров растут с каждым годом. Но раз уже разработанные протоколы, например, BACnet, обеспечивают более эффективный способ подключения контроллеров и являются открытыми для применения любым производителем оборудования, имеется немного стимулов переключать эти контроллеры на веб-службы.
Если мы выйдем за рамки систем BAS, мы окажемся в совершенно другом положении. Здесь наблюдается необходимость соединения при помощи высокопроизводительных компьютеров и по высокоскоростной IP-сети с системами, не использующими протокол BACnet.
Именно для такой ситуации и создавались веб-службы. Здесь компьютеры и сети обладают достаточной мощностью для работы с веб-службами. Хотя здесь необходимо затратить определенные усилия для реализации специализированных подключений и, вероятно, для создания специализированных программных модулей для многих подключений, но возможность описания структуры файла XML в самом этом файле значительно облегчает задачу программиста.
Кроме того, задача еще более упрощается, если программист уже знаком с веб-службами из опыта интеграции предыдущих приложений В2В. (Один заказчик в Техасе, которому нужно было создать специальный интерфейс между его системой BAS и системой выписки счетов, нашел подрядчика, который уменьшил свою цену вдвое, когда узнал, что BAS поддерживает веб-службы.)
Добавление нового стандарта ASHRAE к веб-службам сулит еще большее упрощение работы по поднятию автоматизации зданий на новый уровень, благодаря использованию ИТ-технологии и протокола BACnet.
Что означают некоторые определения?
Сборник определений Webopedia™ определяет веб-службы как «стандартизованный способ интеграции веб-приложений при помощи открытых стандартов XML, SOAP, WSDL и UDDI на базе протокола Интернет». Ниже даются пояснения этих ИТ-терминов для инженеров ОВК.
XML: eXtensible Markup Language (расширяемый язык разметки). XML-файлы используются в основном для переноса данных между приложениями. Этот язык особенно полезен для упаковки данных, которые могут переноситься во многие приложения, в том числе в специальные приложения для конкретных задач, и в приложения, неизвестные на момент создания файла. Для XML-файла нет определенного формата, вместо этого в нем содержится описание собственной структуры данных. Благодаря этому, файл данных может легко изменяться и расширяться. XML хранится в виде текстового файла, поэтому программист может легко прочесть этот файл, найти в нем дескрипторы интересующих его данных и создать приложение для считывания данных из файла и записи в него.
SOAP: Simple Object Access Protocol (протокол доступа к простым объектам). SOAP представляет собой стандартный способ упаковки запроса веб-службы или ответного сообщения, в том числе XML-данных, для передачи с помощью протокола Интернет.
WSDL: Web Services Description Language (язык описаний веб-служб). WSDL представляет собой стандартный способ описания возможностей веб-служб, включая данные, которые могут считываться или записываться службами. WSDL предназначен для облегчения определения — какую информацию можно получить из определенного приложения или на веб-узле. Вероятно, нет ничего удивительного в том, что WSDL написан в формате XML.
UDDI: Universal Description, Discovery and Integration (универсальная система предметного описания и интеграции). UDDI является каталогом веб-узла, позволяющим бизнесам составлять список имеющихся у них веб-служб. Эту систему можно рассматривать как своеобразные «желтые страницы» веб-служб. Не каждый бизнес решает составлять список своих служб в UDDI, но те, которые выполняют это, включают WSDL в UDDI.
IP-протокол представляет собой стандартный способ форматирования и передачи сообщений по сети Интернет. Вероятно, наиболее известным протоколом Интернет является HTTP или Hyper Text Transfer Protocol (протокол передачи гипертекстовых файлов). HTTP используется для переноса веб-страниц по сети и для передачи веб-обозревателям информации о том, как отображать эти страницы. Также одним из наиболее известных протоколов Интернет является протокол MIME или Multipurpose Internet Mail Extensions (многоцелевые расширения электронной почты в сети Интернет), служащий для передачи сообщений электронной почты, содержащих графические, аудио- и видеофайлы. Использование протоколов Интернет не ограничивается только собственно Интернетом, они часто используются в сети Интранет, например, в небольшой компьютерной сети в пределах здания.
Таким образом, если вам нужно внести определенный объем информации в вашу систему BAS, вы производите поиск в UDDI, пока не найдете WSDL, содержащий то, что вам нужно, затем упаковываете ваш запрос к веб-службе в оболочку SOAP, чтобы этот запрос перемещался по HTTP для выделения XML-файла.
Перепечатано с сокращениями из журнала «ASHRAE».
Перевод с английского Л. И. Баранова.
Научное редактирование выполнено В. В. Масленниковым, членом комитета НП «АВОК» «Интеллектуальные здания и информационно-управляющие системы».
Статья опубликована в журнале “АВОК” за №2'2005
Статьи по теме
- Успех технологии BACnet в Германии
АВОК №2'2006 - BACnetTM: Вопросы и ответы
АВОК №1'1998 - BACnet сегодня. Новые важные возможности и будущие усовершенствования
АВОК №4'2003 - Информационная безопасность и защита от перенапряжений в сетях BACnet
АВОК №2'2014 - Системы автоматизации зданий на базе сети BACnet
АВОК №5'2003 - BACnet – интегрирующий стандарт
АВОК №3'2004 - Реализация технологии BACnet в городе Таксоне
АВОК №3'2005
Подписка на журналы