Например, Бобцов

АНАЛИЗ МЕТОДИК ПРОЕКТИРОВАНИЯ БЕСПРОВОДНЫХ СЕНСОРНО-АКТУАТОРНЫХ СЕТЕЙ

Д.А. Киров, А.А. Ожиганов

УДК 004.78
АНАЛИЗ МЕТОДИК ПРОЕКТИРОВАНИЯ БЕСПРОВОДНЫХ СЕНСОРНО-АКТУАТОРНЫХ СЕТЕЙ
Д.А. Киров, А.А. Ожиганов
Рассмотрены существующие методики проектирования информационно-управляющих систем. С учетом специфики беспроводных сенсорно-актуаторных сетей выделены и проанализированы аспектный, актор-ориентированный и платформо-ориентированный подходы, в общем виде описаны процессы проектирования исследуемых систем на их основе. Предложен ряд направлений к улучшению данных методик применительно к беспроводным сенсорноактуаторным сетям, произведен анализ перспектив. Ключевые слова: беспроводные сенсорно-актуаторные сети, встроенные интеллектуальные системы, аспектное проектирование, акторное проектирование, платформо-ориентированное проектирование, WSN, WSAN.
Введение
Технология миниатюрных интеллектуальных сетей датчиков, известная как беспроводные сенсорные сети (БСС; Wireless Sensor Network – WSN), в настоящее время является уже довольно известной как

Научно-технический вестник информационных технологий, механики и оптики, 2013, № 1 (83)

129

АНАЛИЗ МЕТОДИК ПРОЕКТИРОВАНИЯ БЕСПРОВОДНЫХ …

в академической, так и в производственной среде. Идеологически их можно назвать новым, стремительно развивающимся классом информационно-управляющих систем (ИУС). С учетом современных тенденций, связанных с внедрением автоматизации во всевозможные сферы человеческой деятельности, все более актуальным становится применение БСС в задачах управления. Задачей подобных сетей будет не только мониторинг и обработка получаемых данных, но и контроль объектов управления (ОУ), например, станков, роботов, и передача им необходимых команд. Подобному классу задач больше соответствует понятие беспроводных сенсорно-актуаторных сетей (БСАС; Wireless Sensor and Actuator Network – WSAN), активно используемое многими исследовательскими группами.
Говоря о подобном новом классе сетей, следует в первую очередь остановиться на проблемах их проектирования. Это достаточно сложный и трудоемкий процесс, поскольку разработчику необходимо продумывать организацию системы на всех уровнях, от аппаратного до прикладного, а также знать устройство ОУ. В связи с этим, адаптация существующих методик проектирования и разработка элементов автоматизированной системы проектирования (САПР) для БСАС являются актуальными научноисследовательскими задачами и носят новый характер. Целью настоящей работы является анализ методик проектирования БСАС. На основе его результатов необходимо обозначить основные направления к доработке и улучшению этих методик, т.е. выполнить постановку задач для дальнейших исследований в изучаемой области.
Область применения технологии
БСАС находят применение в большом количестве разнообразных прикладных областей, основными из которых являются: автоматизация производственных процессов, мониторинг окружающей среды, «умные дома», охранные системы, медицина и т.д. В качестве конкретного примера можно привести производственную конвейерную линию, оборудованную набором роботов-манипуляторов, осуществляющих сборку изготавливаемых объектов (например, сверление, крепление и другие действия), как объект управления, и набор беспроводных датчиков, осуществляющих контроль состояния этих роботов (обнаружение чрезмерных вибраций и т.п.).
Наиболее перспективными для применения БСАС являются на сегодняшний день так называемые встроенные интеллектуальные системы (Physically Embedded Intelligent Systems – PEIS), описанные в [1, 2]. Они представляют собой набор механических устройств разной сложности (это может быть и обычная лампочка, и современный мобильный робот), коллективное взаимодействие которых осуществляется при помощи БСАС, выполняющей функции контроля и управления.
Проблемы проектирования БСАС
Процесс проектирования и разработки систем, подобных вышеописанной, обладает рядом особенностей, присущих не каждой ИУС. Основные из них перечислены ниже. 1. БСАС состоят, главным образом, из миниатюрных устройств, каждое из которых обладает автоном-
ным источником питания (батареей). Таким образом, для обеспечения надежности и длительности функционирования системы важнейшим требованием является минимизация энергопотребления каждым ее узлом. Наибольший расход батареи связан с вычислительными операциями на узле и, разумеется, c работой беспроводного трансивера (как в режиме ожидания, так и в режиме приема/передачи). Типовым решением описанной проблемы является применение алгоритмов и сетевых механизмов, сокращающих вычислительную нагрузку и обеспечивающих минимальное время нахождения трансивера в активном состоянии путем его периодического включения/выключения, а также промежуточной обработки данных на узле сети. 2. К БСАС часто предъявляют и другие требования, не свойственные ИУС. Хорошим примером здесь могут служить системы данного класса, решающие задачи позиционирования различных объектов. В последние годы построение таких систем на основе сенсорных сетей стало достаточно популярным решением, что описано, к примеру, в [3, 4]. Работоспособность применяемого метода позиционирования в различных условиях, точность, гранулярность измерений и другие требования играют здесь ключевую роль. Следует отметить, что процесс поиска оптимального метода на сегодняшний день недостаточно формализован, что и является основной трудностью для проектирования БСАС при наличии описанных требований. 3. Отдельно следует отметить сложность и трудоемкость процесса проектирования БСАС. Большое число узлов и гетерогенность оборудования являются для них типичными. В большинстве случаев от разработчика требуется детальное понимание предметной области и прикладной задачи, знание низкоуровневых функций конкретной аппаратуры, навыки в области теории автоматического управления и т.п. Основным способом снижения сложности разработки является использование промежуточного программного обеспечения (ПО), предоставляющего верхним уровням различные сервисы (отправки/приема данных, опроса, локализации и т.п.), скрывая при этом особенности их реализации на конкретном оборудовании. Примеры такого ПО могут быть найдены в [5] или [6].

130

Научно-технический вестник информационных технологий, механики и оптики, 2013, № 1 (83)

Д.А. Киров, А.А. Ожиганов
Помимо указанных особенностей, к БСАС, разумеется, предъявляются те же требования, что и к большинству ИУС: работа в реальном масштабе времени (часто задаваемое ограничением WCET – Worst Case Execution Time), массогабаритные ограничения, высокая надежность, масштабируемость. Данный список можно расширить введением дополнительных требований, таких как шифрование передаваемых данных, динамическое реконфигурирование, самовосстановление и т.п.
Методики проектирования БСАС
Существующие методики проектирования ИУС (к которым относятся и БСАС) показаны на рис. 1.

Рис. 1. Методики проектирования ИУС
Методики во многом похожи на некоторых этапах, однако их основные принципы различны. Следует также отметить, что проектирование БСАС, как и некоторых других сложных распределенных систем, чаще всего принято отделять от проектирования и разработки компонент, из которых они состоят, т.е. аппаратуры. Это обусловлено следующими причинами. Во-первых, процесс проектирования и связывания между собой всех уровней таких систем (от верхнего прикладного до самого нижнего аппаратного) является невероятно трудоемкой задачей. Во-вторых, разработкой некоторых частей, рассматриваемых как часть сенсорно-актуаторной сети, таких как объекты наблюдения или управления, могут заниматься совершенно разные группы людей. Наконец, в-третьих, в настоящее время в области БСС все больше заметна тенденция к созданию так называемых аппаратно-программных платформ, т.е. многофункциональных контроллеров и приемопередатчиков, ориентированных на различные классы задач.
По указанным выше причинам из дальнейшего рассмотрения исключаются узконаправленные проприетарные решения, и делается предположение о том, что имеется возможность выбора различных вариантов готового оборудования, а также базового ПО (операционные системы, сетевые протоколы и т.п.). Следует отметить, что число существующих аппаратно-программных платформ и ПО достаточно велико, и это подразумевает достаточно серьезную проблему выбора. В рамках данного контекста наибольший интерес представляют аспектная, акторная и платформо-ориентированная методики.
Аспектное проектирование
В рамках аспектной методики предполагается детальное рассмотрение проектируемой системы в различных аспектах, каждый из которых учитывает определенный ряд взаимосвязанных свойств. Примерами аспектов могут служить конструктивный, надежностный, экономический, поведенческий и т.п. В процессе аспектного проектирования выделяются слабо связанные аспекты системы (ортогональные). Это существенно облегчает построение моделей системы, так как построение всеобъемлющей сложной модели заменяется возможностью описывать и исследовать систему с различных точек зрения на нее.
Типовой набор аспектов, рассматриваемых в ИУС, в случае БСАС может быть дополнен, главным образом, так называемым энергосберегающим аспектом, в рамках которого проектировщик стремится сформировать такое структурное и функциональное устройство системы, которое минимизировало бы энергопотребление ее узлов. Большое внимание здесь уделяется сетевым протоколам. К примеру, грамотный выбор размера временных слотов и их распределение в протоколах TDMA (Time Division Multiple Access – множественный доступ с разделением по времени) позволяют добиться существенной экономии энергии.
Аспектная методика проектирования во многом пересекается с другими методиками, что будет показано далее.
Акторное проектирование
Данный вид проектирования представляет собой использование формальных высокоуровневых моделей, представляющих вычислительный процесс как взаимодействие компонент, скрывающих внутреннюю реализацию и имеющих четко определенный внешний интерфейс. Эти компоненты называются

Научно-технический вестник информационных технологий, механики и оптики, 2013, № 1 (83)

131

АНАЛИЗ МЕТОДИК ПРОЕКТИРОВАНИЯ БЕСПРОВОДНЫХ …

акторами. Для обработки сигналов акторы содержат порты, задающие направление (вход и (или) выход) и тип обрабатываемых данных. С этой точки зрения их можно сравнить с объектами ООП (объектноориентированного программирования). Процесс акторного проектирования во многом основан на принципе иерархического многоуровневого моделирования с постепенной детализацией моделей. В результате получается высокоуровневая платформа, позволяющая осуществить формальный анализ характеристик вычислительного процесса и его реализацию на конкретной аппаратуре с использованием конкретного языка программирования [7].
Начальный этап проектирования БСАС на основе данной методики представляет собой построение базовой акторной модели, описывающей взаимодействие крупных частей системы (можно назвать их «виртуальными объектами»). Это может быть, к примеру, набор датчиков и актуаторов, связанных с конкретным ОУ (количество и вид самих объектов, а также функции системы по отношению к ним, разумеется, определяются заранее). Уже на данном этапе задаются основные ограничения, осуществляется параметризация модели на основе известных характеристик оборудования, производится перебор и анализ разных вариантов высокоуровневой структурной организации системы.

Модель верхнего уровня

Модель ОУ

Команды

Команды

D1

OУ1 ... ОУn
События

С D2 События
Dn

... ...

Сеть
Уровни моделей Системные Сетевые Узловые Модели компонентов Модели отдельных механизмов

Модель сети

AS SC

События

AP

S A Команды

AC

S

A SS

Узловые модели
D D
D
D D
D

Рис. 2. Процесс построения акторных моделей

Виды моделей
– начальная (общее устройство и связи)
– каналы связи – топологическая модель
(совокупность узлов)
– сенсорного узла – актуатора – контроллера сети – комбинированные
– трансивера – микроконтроллера – другие элементы аппаратуры

Синтезируемые параметры
– число ОУ – число сетей/подсетей
– сетевая топология – взаимное расположение узлов, координаты – маршруты
– приоритеты задач – комплектация узлов (аппаратный
состав)
– мощность сигнала – форматы команд, данных – набор сетевых протоколов

– прикладные алгоритмы

– активный интервал трансивера

– сетевые протоколы и механизмы – длина и число временных слотов

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

132

Научно-технический вестник информационных технологий, механики и оптики, 2013, № 1 (83)

Д.А. Киров, А.А. Ожиганов

вложенных) может использоваться наиболее удобная модель вычислений (дискретные события, конечный автомат, динамические потоки данных и т.п.) [7]. В принципе, детализация может продолжаться сколь угодно долго, однако сложность модели при этом стремительно растет. Этот факт следует выделить как основной недостаток акторного проектирования. В случае резкого увеличения сложности можно осуществлять выборочную детализацию с целью исследования какой-либо определенной характеристики, в чем проявляется связь данной методики с аспектным проектированием.
На рис. 2 в упрощенной форме описан процесс построения моделей БСАС в виде взаимосвязанных акторов. Видно, что из модели верхнего уровня, описывающей общее устройство системы (число ОУ, их связи друг с другом и с сетью), производится переход к сетевым моделям и моделям ОУ (на рисунке ОУ1, ..., ОУn – объекты управления; акторы D1, ..., Dn – устройства ОУ и узлов сети; С – контроллеры сети или ОУ; S – сенсорные узлы; А – актуаторы; АР – модельная точка доступа в сеть).
В целом процесс функционирования системы можно представить как обнаружение и обработку событий, происходящих с ОУ, и генерацию соответствующих управляющих команд. Детализация моделей происходит и далее, и на каждом уровне осуществляется синтез различных параметров системы. Основные уровни моделей и примеры параметров представлены в таблице.
Многие компоненты и связи в приведенном выше описании изображены в упрощенном виде или вовсе не упоминаются, однако, с точки зрения авторов, это не мешает получению общего представления о процессе акторного проектирования БСАС.
Платформо-ориентированное проектирование
Данный вид проектирования подразумевает под собой последовательное создание ряда уровней представления системы, именуемых платформами, с последующим отображением их друг на друга и постепенным снижением абстрактности. Для этой методики характерно наличие нисходящей (top-down) и восходящей (bottom-up) фаз проектирования. Также часто выделяют финальную центральную фазу (meet in the middle), на которой происходит сопоставление абстрактного устройства системы, поступившего «сверху» (из пространства приложений), и более конкретной системной организации «снизу» (из архитектурного пространства).
Использование данного подхода для проектирования БСАС представляет собой создание нескольких платформ, каждая из которых скрывает особенности реализации платформы более низкого уровня. Начальным этапом нисходящей фазы является формирование набора сервисов, которые система будет предоставлять пользователю (например, сервис опроса, сервис управления и т.д.). На данном этапе система рассматривается как совокупность «виртуальных» узлов (это не физические сущности, а абстракции, описывающие наблюдаемые области и алгоритмы управления). Производится определение всех вариантов взаимодействия этих узлов (каждый из этих вариантов представляет собой сочетание запросов и команд) [8]. Это позволяет оценить некоторые характеристики системы (например, временные задержки передачи между конечными точками) и преобразовать их в требования, которым она гарантированно должна соответствовать.
На этапе восходящей фазы производится изучение доступного аппаратного обеспечения и выбор наиболее подходящего по ряду существенных критериев. Также на данном этапе должен быть специфицирован интерфейс, скрывающий особенности реализации аппаратных элементов. В основном это делается посредством установки и конфигурирования специализированной операционной системы (например, TinyOS – [9]).
При переходе к центральной фазе первым шагом является преобразование полученных оконечных задержек и энергозатрат в соответствующие задержки и энергозатраты при передаче данных между соседними узлами. Производится анализ и выбор протоколов, подходящих к применению в проектируемой системе (обычно они обладают уже известными характеристиками) и составляется некоторое число вариантов ее структурно-функциональной организации. Выбор оптимальной из них и вычисление соответствующих межузловых характеристик осуществляется при помощи формализованного математического аппарата (решение проблемы оптимизации с ограничениями). Обычно это делается при участии элементов САПР (пример подобного ПО описан в [8]). На основании вышеописанных действий, а также анализа предметной области описывается «виртуальная» архитектура системы, содержащая уже упоминавшийся набор сервисов, сетевую модель и ряд необходимых программных примитивов [10]. Завершающим этапом центральной фазы является отображение синтезированной «виртуальной» архитектуры на аппаратно-программную платформу и генерация кода программ, непосредственно устанавливаемых на узлы сети.
На рис. 3 в общем виде проиллюстрирован вышеописанный подход. Результатом нисходящей фазы проектирования является формирование платформы сервисов, результатом восходящей – аппаратнопрограммная платформа на базе выбранных контроллеров. Фазы сходятся в центральной области, где посредством анализа их результатов формируется оптимальный вариант организации системы, на основе которого производится описание «виртуальной» архитектуры системы с последующим преобразованием в реальную.

Научно-технический вестник информационных технологий, механики и оптики, 2013, № 1 (83)

133

АНАЛИЗ МЕТОДИК ПРОЕКТИРОВАНИЯ БЕСПРОВОДНЫХ …

Рис. 3. Платформо-ориентированный подход к проектированию БСАС
Перспективы применения методик
В целом рассмотренные в данной работе методики проектирования ИУС в широком смысле являются вполне подходящими для БСАС. Однако, разумеется, каждая из них нуждается в пересмотре и доработке. Аспектный подход, к примеру, на первый взгляд вполне удобен, но, как было показано, требует рассмотрения вместе с типовыми дополнительных аспектов системы (таких как энергосберегающий), что существенно сказывается на сложности моделирования и «увязывания» полученных результатов друг с другом. Актуальным в рамках данного подхода является выявление аспектов, которые удобнее рассматривать совместно, а также поиск наиболее эффективных вариантов применения аспектной методики в сочетании с другими.
Безусловным достоинством акторного проектирования является визуальность моделей и удобство высокоуровневого (и не только) описания системы. Недостатком, разумеется, является резкое возрастание сложности акторных моделей с увеличением вложенности, что указывает на необходимость их разделения (связь с аспектной методикой). Также достаточно трудоемкой задачей является моделирование работы сетевых протоколов при помощи акторов, ввиду отсутствия их готовой инкапсулированной реализации. Интересной и важной задачей на сегодняшний день является создание готовых наработок (например, реализаций протоколов, типовых ОУ и т.п.) в какой-либо среде акторного моделирования (к примеру, в Ptolemy II).
С точки зрения авторов, наибольшей актуальностью обладает развитие платформоориентированной методики. Абстрагирование от конкретной аппаратно-программной платформы и переход к более высокому уровню представления системы является важнейшим шагом в развитии методов и средств проектирования вычислительных систем и БСАС, в частности. Создание высокоуровневых платформ в виде библиотек промежуточного ПО существенно облегчит процесс прототипирования БСАС и разработки конечных систем, решающих различные прикладные задачи. Примером может служить проект системы управления мобильными объектами, описанный в [4]. Проблемой же платформоориентированного подхода является, безусловно, недостаток средств САПР, применяемых на различных фазах проектирования. Процессы определения и перебора вариантов взаимодействия компонентов системы и решения оптимизационных задач, без сомнения, нуждаются в автоматизации. Требуется реализация методических заготовок в существующих математических пакетах (MATLAB, Mathcad и др.) и пакетах имитационного моделирования (например, Ptolemy II, SensorSim, OMNeT++, AnyLogic).
Общей задачей развития рассмотренных методик проектирования является формализация и приоритизация требований, дополнение и совершенствование процесса составления архитектурных и функциональных спецификаций.

134

Научно-технический вестник информационных технологий, механики и оптики, 2013, № 1 (83)

Ю.О. Чернышев, А.В. Басова, П.А. Панасенко, В.И. Поляков

Заключение

Технология беспроводных сенсорно-актуаторных сетей идеологически соответствует концепции «повсеместных» вычислений (ubiquitous computing), сформулированной Марком Уэйзером еще в начале 90-х г.г. прошлого века и получающей все большую популярность в современном мире. В настоящей работе в общем виде произведено рассмотрение основных проблем проектирования беспроводных сенсорно-актуаторных сетей, являющихся, по сути, камнем преткновения для их широкомасштабного распространения в различных прикладных областях. Проанализирован ряд методик, которые на сегодняшний день применяются для проектирования изучаемого класса систем. Проведенный анализ позволил сформулировать актуальные задачи по доработке и улучшению рассмотренных методик. Решение поставленных задач во многом определит как дальнейшее применение технологии, так и судьбу упомянутой концепции развития вычислительной техники.

Литература

1. Bordignon M., Pagello E., Saffiotti A. An Inexpensive, Off-The-Shelf Platform for Networked Embedded Robotics // International Conference on Robot Communication and Coordination (RoboComm). – Athens, Greece, 2007. – P. 1–4.
2. Bordignon M., Rashid J., Broxvall M., Saffiotti A. Seamless Integration of Robots and Tiny Embedded Devices in a PEIS-Ecology // International Conference on Intelligent Robots and Systems (IROS). – San-Diego, California, 2007. – P. 1–6.
3. Van de Goor M. Indoor Localization in Wireless Sensor Networks // Master’s Thesis, Netherlands. – 2009. – P. 1–31.
4. Киров Д.А. Перспективы применения беспроводных сенсорных сетей в задачах управления мобильными роботами // Сборник трудов молодых ученых и сотрудников кафедры ВТ / Под. ред. д.т.н., проф. Т.И. Алиева. – СПб: СПбНИУ ИТМО, 2012. – С. 34–38.
5. Branch J.W., Davis II J.S., Sow D.M., Bisdikian C. Sentire: A Framework for Building Middleware for Sensor and Actuator Networks // Рroc. of the 3rd International Conference on Pervasive Computing and Communications Workshops. – 2005. – P. 1–5.
6. Jimenez A., Martinez-de Dios J.R. et al. Towards an open testbed for the cooperation of robots and wireless sensor networks. – University of Sevilla, 41092 Sevilla, Spain. – 2010. – 6 p.
7. Lee E.A., Neuendorffer S., Wirthlin M.J. Actor-Oriented Design of Embedded Hardware and Software Systems // Journal of Circuits, Systems and Computers. – November 20, 2002. – P. 12–14.
8. Bonivento A., Carloni L.P., Sangiovanni-Vincentelli A. Platform-Based Design of Wireless Sensor Networks for Industrial Applications. – University of California at Berkeley. – 2005. – 6 p.
9. Handziski V., Polastre J., Hauer J-H., Sharp C., Wolisz A., Culler D., Gay D. Hardware Abstraction Architecture [Электронный ресурс]. – Режим доступа: http://www.tinyos.net/tinyos-2.1.0/doc/html/tep2.html, свободный. Яз. англ. (дата обращения 10.10.2012).
10. Bakshi A., Prasanna V.K. Algorithm Design and Synthesis for Wireless Sensor Networks. – Department of Electrical Engineering. University of Southern California, Los Angeles, CA 90089. – 8 p.

Киров Дмитрий Александрович Ожиганов Александр Аркадьевпч

– Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, аспирант, kdedge@mail.ru
– Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, доктор технических наук, профессор, ojiganov@mail.ifmo.ru

Научно-технический вестник информационных технологий, механики и оптики, 2013, № 1 (83)

135