Кроссплатформенные распределенные сенсорные сети

Исаков С.А., Братцев К.Е., Володин К.И., Горячкин А.В. КРОССПЛАТФОРМЕННЫЕ РАСПРЕДЕЛЕННЫЕ СЕНСОРНЫЕ СЕТИ

Одними из важнейших задач современного производства, где необходим круглосуточный мониторинг и автоматизированное управление технологическими процессами, являются задачи контроля и управления, например, контроль качества электрической энергии и контроль подвижного состава РАО «РЖД». В настоящее время для решения этих задач используются различные стандартные и специфические аппаратные средства и программное обеспечение, созданное как с помощью универсальных средств разработки (компиляторы с различных языков программирования), так и с помощью специфических средств, таких как SCADA системы, которые позволяют разрабатывать алгоритмы управления и обеспечивать визуальный интерфейс си-

стемы. В любом случае создание программного обеспечения (ПО) для мониторинга и управления требует высокой квалификации программиста разработчика. Однако, в случае, когда объект наблюдения является территориально распределенным (рис.1), появляется дополнительный уровень сложности при реализации подобной системы. Использование кросспатформенной распределенной сенсорной сети (КРСС) может быть универсальным решением.

Под локальным объектом (ЛО) следует понимать обособленный объект, размеры которого позволяют применять на нем локальные вычислительные сети (ЛВС) и шины передачи данных, такие как RS-485, RS-232. Протяженность таких объектов - от единиц до нескольких сотен метров. Примерами ЛО являются отдельные административные, промышленные, общественные здания, ограниченные территории. Локально-распределенный объект (ЛРО) - совокупность ЛО в пределах выделенной территории. Примерами данного класса являются : комплекс строений, зданий и открытых площадок крупного предприятия, находящихся в

пределах единой выделенной территории, единый комплекс зданий. Максимальная протяженность таких объектов может составлять от нескольких сотен метров до нескольких километров.

Территориально распределенный объект (ТРО) - совокупность территориально обособленных ЛО и ЛРО, удаленных друг от друга и объединенных каналами связи, по крайней мере, с центральным объектом. К

данному классу относятся: региональная сеть объектов крупного предприятия, объекта промышленности и

многое др. Максимальная взаимная удаленность локальных объектов в составе РО от сотен метров до нескольких тысяч километров.

Характер ТРО, а также возможность присутствия нескольких ЛО в составе, определяет использование для реализации территориально распределенной сенсорной сети как ЛВС, шин передачи данных RS-485, RS-232, Bluetooth, ZigBee, так и беспроводных сетей Wi-Fi, широкополосных каналов Ethernet.

Рис. 1. Применение КРСС для мониторинга зданий и сооружений

Кроссплатформенная территориально распределенная сенсорная сеть предназначена для круглосуточной автоматической регистрации данных, а также управления технологическими процессами в ручном режиме, а при использовании дополнительных программных средств — и в автоматическом.

Ввиду территориальной распределенности сети, неизбежно возникает вопрос гетерогенности узлов сети. Распределенные системы должны функционировать в среде, представляющей собой совокупность узлов, выполненных в различной аппаратной архитектуре, работающих под управлением различных операционных систем, связанных с помощью различных сетевых технологий, компоненты которых реализованы с использованием различных языков программирования. Без этого условия невозможно применение КРСС в различных, в том числе и агрессивных средах (рис. 2).

Рис. 2. Применение КРСС для исследования температурных и химических полевых картин

В этой ситуации очевидным является решение использовать промежуточное программное обеспечение (MiddleWare). Слой промежуточного программного обеспечения обеспечивает взаимодействие между компонентами операционной системы и прикладным программным обеспечением узла сети. Использование подобной архитектуры определяет ряд преимуществ: отсутствие зависимости прикладного программного обеспечения от транспортных протоколов, возможность использовать различные платформы при реализации узлов сети, возможность использования различных языков программирования.

Сенсорная сеть подобных масштабов, охватывающая самые разнообразные платформы и устройства, содержит интеллектуальные автономные модули, с возможностью внутренней адаптации, и самообразованием. Такими возможностями обладают модули на базе программируемые логические интегральные схемы (ПЛИС).

В ходе проектирования кроссплатформенной территориально распределенной сенсорной сети оптимальным решением является использование систем автоматизированного проектирования (САПР) с возможностью моделирования и тестирования устройств на базе ПЛИС.

Одним из таких программных комплексов является связка САПР Altium Designer 6.9. [1] и Xilinx ISE

9.2 [2] (рис. 3) .

САПР Altium Designer 6.9 представляет собой систему сквозного проектирования и позволяет параллельно разрабатывать проекты печатной платы и ПЛИС. К несомненным достоинствам САПР Altium Designer 6.9 относится реализованная технология Live Design [3], позволяющая тестировать устройства в реальном времени как на отладочных комплектах так и на готовых изделиях, использовать виртуальные инструменты.

.JIAII.J.iinl li i' U^l^l!1 lilLHJil-Л II- L' ДНЖВЯВШГВГШ JIH J iliili'lH.l J -¿ИНи^Ч :НМ!Д1НЖ?ТЯЛаУД!ШЯ111‘Л1И111Н1Ш I-1ЛДЖНЯИгИ^ДгJl

Рис. 3 Altium Designer 6.9 и Xilinx ISE 9.2

Необходимость обработки и глубокого анализа различных показателей территориально распределенных объектов, в контексте задач контроля качества электрической энергии и подвижного состава РАО «РЖД», диктует использование распределенных сенсорных сетей (РСС), единой базы данных для хранения и обработки информации.

Исследование объектов, отнесенных к класу или рассматриваемых как распределенные, возможно при помощи адекватных инструментов. К таким инструментам можно безусловно отнести распределенные сенсорные сети [4,5,6].

До этапа физической реализации сети целесообразно провести тестирование нагрузки на базу данных, отработать взаимодействие компонентов сенсорной сети, заменив поток данных от сенсоров, тестовым набором данных, при этом следует ввести программные агенты, эмулирующие работу сенсорной сети.

Построение таких аналогов сенсорных сетей для проведения эксперимента возможно с использованием технологии виртуализации приложений (Application Virtualization) и виртуализации операционных систем. Виртуализация приложений позволяет запускать различный набор программных клиентов на единой аппаратной платформе, но в изолированном пространстве для каждого клиента, в то время как технология виртуализации операционных систем подразумевает полную виртуализацию всего аппаратного и программного окружения операционной системы. Ко второму типу виртуализации также следует отнести виртуальные среды, позволяющие эмулировать работу мобильных и встраиваемых устройств [10,15].

Полноценный эксперимент является основой исследований в любой области науки. Однако, в некоторых случаях, возможен переход к частичной или полной виртулиазации эксперимента с переходом на виртуальные аналоги систем.

Рассмотрим пример эксперимента по температурному мониторингу помещения в котором находятся как приборы повышающие температуру(серверное оборудование) так и ее понижающие (кондиционеры, бытовые вентиляторы и пр.). Для поддержания относительно постоянной температуры в определенных пределах необходимо измерять параметры в точках излучения [7]. Для таких целей возможно воспользоваться распределенной сетью, однако в отсутствии аппаратных устройств сенсорной сети возможен переход к виртуальным аналогам.

Распределенная сенсорная сеть существует в трех основных слоях взаимодействия: сетевой, программный, аппаратный.

Очевидно, что абстрагируясь от конкретного оборудования, переходя на уровень функционального описания назначения узла, а также его взаимодействия с другими виртуальными узлами сети можно говорить о достаточном уровне виртуализации аппаратных аналогов узлов сети.

Такие функциональные аналоги фактически являются программными агентами, запущенными на реальных и виртуальных машинах, в зависимости от уровня абстрагирования и необходимости использования реального оборудования [8, 9].

Применение виртуализации приложений дает возможность полностью использовать любые ресурсы физического компьютера, а технология виртуализации операционных систем позволяет подключать виртуальные порты передачи данных (USB, COM, LPT) к физическим портам компьютера, таким образом, сохраняется возможность подключения специфического оборудования в виртуальную среду. Виртуальные среды, позволяющие эмулировать работу мобильных и встраиваемых устройств, обладают всеми коммуникационными возможностями, что и физические устройства подобного класса. При этом реализация коммуникационных возможностей виртуальных средств возможна благодаря использованию оборудования физического компьютера [10] .

Современные методы и средства разработки позволяют впоследствии произвести перенос распределенной сенсорной сети из виртуального пространства с заменой программных агентов физическими сенсорами.

Таким образом осуществляется возможность использования различных типов виртуализации для эмулирования работы кроссплатформенной распределенной сенсорной сети с использованием различных аппарат-

ных платформ, PC

как промышленных - FastWell, так и широко распространенных пользовательских

Pocket

Рис. 4. Промышленная платформа FastWell, Pocket PC Windows Mobile 5.0

При разработке программного обеспечения кроссплатформенной сенсорной сети (КРСС), предназначенной для измерения показателей качества электрической энергии в электросетях территориально-распределенного объекта, а также при исследовании параметров транспортных инфраструктур, неизбежно встает проблема гетерогенности окружения. Различные среды, в которых функционирует КРСС, различные платформы, посредством которых реализуются узлы сети, определяют использование различных языков, сред программирования. Затраты на разработку ПО крупной территориально распределенной сети могут стать существенными. Очевидно, что необходима консолидация усилий по разработке программного обеспечения для подобных проектов.

Рис. 5. Код приложения. Среда разработки Microsoft Visual Studio 2005

Реализация толстых, в случае, когда требуется обработка данных от сенсоров —на месте", и тонких клиентов КРСС с использованием среды Microsoft Visual Studio 2005/2008 (рис. 5) и технологии .Net Framework, позволяют консолидировать усилия по разработке программного обеспечения (ПО), реализовать миграцию ПО с единым кодом в рамках нескольких исполняемых сред: Windows CE, Windows Pocket PC 2 0 03, Windows SmartPhone Edition, Windows Mobile (рис. 6)[11,13].

2005 для Windows CE 5.0, Windows Mobile 5.0, расширять ряд платформ на которых реализуются

Рис. 6. Среда разработки Microsoft Visual Studio Windows SmartPhone Edition.

Использование технологии .Net Framework позволяет функциональные узлы КРСС. Использование .Net Framework позволяет программисту абстрагироваться от среды исполнения прикладного программного обеспечения и сосредоточиться на реализации основного функционала ПО, при необходимости работы ПО узла сети в среде Windows CE 5.0, Windows Mobile 5.0, Windows SmartPhone Edition, его функциональность будет поддержана благодаря использованию .Net Compact Framework, а при необходимости работы узла в средах Microsoft Windows Embedded, например семейства популярных контроллеров LPC2000 NXP на основе ARM7™ и NXP LPC3180 на основе ARM9, возможна работа благодаря .NET Micro Framework[12,14,15].

Характер территориально распределенных объектов, а также возможность присутствия нескольких локальных объектов в их составе, определяет использование для реализации территориально распределенной сенсорной сети как ЛВС, шин передачи данных RS-485, RS-232, Bluetooth, ZigBee, так и широкополосных каналов Ethernet, беспроводных сетей Wi-Fi.

Рис. 7 Интегрированные BlueTooth OEM-модули

Гетерогенное окружение КРСС вынуждает разработчика искать баланс между энергопотреблением устройств и их коммуникационными возможностями. Использование интегрированных OEM-модулей (рис. 7) является оптимальным вариантом для отладки и тестирования функциональных и коммуникационных возможностей узла КРСС.[14]

Таким образом, системы реализованные с использованием единой технологии .NET Framework, обладают возможностями работы в гетерогенных мультиплатформенных средах КРСС, что позволяет использовать их для решения задач контроля состояния и управления территориально распределенными объектами.

ЛИТЕРАТУРА

1. Altium Limited. Altium Designer 6.9 - www.altium.com

2. Xilinx. Xilinx- www.xilinx.com

3. Altium Innovation Station - www.altium.com/AltiumInnovationStation

4. Sensor Technology Handbook. Editor-in-Chief Jon S. Wilson. Elsevier, 2005г. - 703с, ил.

5. Володин К. И. Щербань А. Б. Распределенные интеллектуальные информационные системы // Труды международной НТ конференции "Современные информационные технологии" - Выпуск 2, Осенняя сессия. Пенза: ПГТА, 2005. - С.89-91.

6. Володин К. И. Ладиков С. В. Система сбора информации для распределенной сенсорной сети на базе

микроконтроллера Nordic nRF2 4E1// Труды международной НТ конференции "Современные информационные

технологии". Осенняя сессия. Пенза: ПГТА, 2006. - С.55-58.

7. Володин К. И. Щербань А. Б. Даянов М.Х. Температурная сенсорная сеть // Труды международной НТ конференции "Современные информационные технологии" - Выпуск 2, Осенняя сессия. Пенза: ПГТА, 2 0 05. -С.86-89.

8. Михеев М. Ю. Щербань А. Б. Володин К. И. Синтез структурных информационных моделей информационных объектов // Труды международной конференции «Континуальные алгебраические логики, исчисления и нейроинформатика в науке и технике - КЛИН-2006», Том 2. Ульяновск, 2006г. - с.84-86.

9. Володин К. И. Дмитриенко А.Г. Гордеев С. Н. Web - интерфейс систем мониторинга состояния распределенных объектов на базе сенсорных сетей // Труды международной НТ конференции "Современные информационные технологии". Осенняя сессия. Пенза: ПГТА, 2006. - С.61-63.

10. Ben Armstrong. Microsoft Virtual Server 2005 - Wiley Publishing, 2007г., 622с, ил., ISBN:

978-0-470-10917-5.

11. Кристиан Нейгел, Билл Ивьен, Джей Глинн, Морган Скиннер, Карли Уотсон. C# 2005 и платформа .NET 3.0 для профессионалов. - Диалектика, 1376 стр., с ил.; ISBN 97 8-5-8 4 5 9-1317-3.

12. Джордж Шеферд. Программирование на Microsoft Visual C++ .NET. - И. Питер, 2007г., 928 стр., с

ил.

13. Эндрю Троелсен. Язык программирования С# 2 0 05 и платформа .NET 2.0 - И. Вильямс, 2007 г.,

1168 стр., с ил., ISBN 5-8459-1124-9.

14. Компания «КОМПЭЛ» - www.compel.ru.

15. Microsoft Developer Network - msdn.microsoft.com