Научная статья на тему 'ПРОГРАММНАЯ ПЛАТФОРМА ДЛЯ ОРГАНИЗАЦИИ И ФУНКЦИОНИРОВАНИЯ БЕСПРОВОДНЫХ СЕНСОРНЫХ СЕТЕЙ РАЗЛИЧНЫХ КЛАССОВ ТОПОЛОГИЙ'

ПРОГРАММНАЯ ПЛАТФОРМА ДЛЯ ОРГАНИЗАЦИИ И ФУНКЦИОНИРОВАНИЯ БЕСПРОВОДНЫХ СЕНСОРНЫХ СЕТЕЙ РАЗЛИЧНЫХ КЛАССОВ ТОПОЛОГИЙ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
12
4
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
БЕСПРОВОДНЫЕ СЕНСОРНЫЕ СЕТИ / ДАТЧИКИ / СЕНСОРЫ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Белкин Вячеслав Дмитриевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

SOFTWARE PLATFORM FOR THE ORGANIZATION AND OPERATION OF WIRELESS SENSOR NETWORKS OF DIFFERENT CLASSES OF TOPOLOGIES

Research work is devoted to the study of the principles of organization and functioning of the wireless sensor network (WSN) and creating tools for its implementation. The main goal of this work is to create a software platform to enable the application of WSN. The first task of the research is devoted to the development of a tool for configuration of a workplace of the programmer on a UNIX-like operating systems that provides: 1) the development of applications for WSN nodes, 2) reprogramming the central microprocessor of the node, 3) debug your application. The result of solving the first problem is the first module of the software platform. The second objective of the research is dedicated to the creation of the second module, the elements of which govern the functioning of the hardware components of the experimental nodes EVB8871. Collectively this module allows you to manage the components of WSN: to run the program a central microprocessor host to control power modes, to configure the timers, clock switches, LEDs, sensors, etc. in Other words, this module performs the basic functions of the operating system. The third objective of the research is dedicated to the creation of a third module responsible for the transceiver. As transceiver nodes EVB8871 equipped with a chip Texas Instruments CC2520, which is a ZigBeeTM/IEEE 802.15.4 transceiver of the second generation, specially designed for RF applications in the 2.4 GHz band. This chip is an independent processor, which should be controlled to perform the desired action. The third module includes configuring a transceiver and an implementation of a stack of communication protocols which are the basis for the organization and functioning of WSN. From all levels of the protocol stack is of particular interest for the network because it is responsible for initializing the network, the interaction between the nodes and the further functioning of the network, i.e. its ability to self-organize. Thus, a software framework for application development of BSS includes three modules that are implemented during the research work. Speaking about the results, it should say on their broad spectrum of applications: aerospace, automation of buildings, transport infrastructure, medicine, defense and security. Part of the work aimed at conceptual development of the ideas applied projects aimed at solving acute problems in one area or another.

Текст научной работы на тему «ПРОГРАММНАЯ ПЛАТФОРМА ДЛЯ ОРГАНИЗАЦИИ И ФУНКЦИОНИРОВАНИЯ БЕСПРОВОДНЫХ СЕНСОРНЫХ СЕТЕЙ РАЗЛИЧНЫХ КЛАССОВ ТОПОЛОГИЙ»

www.mai.ru/science/trudy/

Труды МАИ. Выпуск № 89

УДК 004.738.2

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

Белкин В.Д.

Московский авиационный институт (национальный исследовательский университет), МАИ, Волоколамское шоссе, 4, Москва, A-80, ГСП-3, 125993, Россия

e-mail: belkin-vd@mail.ru

Аннотация

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

Ключевые слова: беспроводные сенсорные сети, сенсоры, датчики, радиопередача, встроенное программирование

Введение в БСС

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

Множество узлов с датчиками образуют БСС, которая выполняет такие функции как сбор данных датчиками, обработка полученных данных и передача данных в конечный пункт назначения. Построение маршрутов передачи данных обеспечивается встроенной способностью БСС к самоорганизации [1].

При организации БСС используются различные классы топологий: линия, звезда, дерево, ячеистая топология. В ячеистой топологии выход из строя одного из узлов-участников ретрансляции пакета по маршруту не прервёт передачу данных, а инициирует поиск альтернативного маршрута передачи данных через соседние узлы [2].

Узлы, используемые в БСС, отличаются продолжительным сроком службы. В зависимости от типа используемых элементов питания и их ёмкости, длительность работы узлов может исчисляться годами.

Используемое оборудование

Типовой узел БСС включает в себя ряд базовых модулей: приемопередатчик, управляющий микропроцессор, элементы питания, датчики. Помимо базового

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

В рамках проведения исследовательской работы использовалось следующее базовое оборудование (см. рис. 1):

• Узел (отладочная плата) EVB8871,

• программатор MSP - FET430 UIF,

• РМП на базе персонального компьютера с установленной операционной системой (ОС) Debian.

Рисунок 1. Узел (внизу) и программатор (вверху). Узел ЕУВ8871 работает под управлением микропроцессора MSP430F5438A

компании Texas Instruments. Характеристики семейства MSP430 оптимальны для

3

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

Помимо микропроцессора MSP430F5438A узел EVB8871 включает в себя множество аппаратных компонентов: приемопередатчик Texas Instruments CC2520, контроллер OLED-дисплея GOLDELOX—SGC компании 4D Systems, внешнюю FLASH-память M25PE40 компании Micron Technology, звуковой извещатель ST Microelectronics TS2007, карту памяти microSD, USB/UART—интерфейс Silicon Labs CP2102, навигационный переключатель (джойстик), светодиоды, микросхему Maxim Integrated DS2411R, датчики температуры и освещения, цифровой микрофон, разъем расширения.

Цель и поставленные задачи исследовательской работы

Исследовательская работа посвящена изучению принципов организации и функционирования БСС и созданию инструментария для её реализации. Основная цель работы заключается в создании программной платформы, обеспечивающей возможность создания прикладных БСС на основе рассмотренных узлов EVB8871. Эта платформа должна функционировать на UNIX-подобных ОС.

Для разработки приложений компания Texas Instruments поставляет программные комплексы Code Composer Studio [3] и Embedded Workbench Kickstart [4], однако Embedded Workbench Kickstart не предназначена для работы в UNIX-подобных ОС, а Code Composer Studio является не свободно распространяемым программным обеспечением. Поэтому формулируется первая задача: необходимо

разработать инструмент для конфигурирования РМП на базе UNIX-подобных ОС, обеспечивающий 1) разработку приложений для узлов БСС,

2) перепрограммирование центральных микропроцессоров узлов EVB8871,

3) выполнение отладки приложений. Результат решения первой задачи должен стать первым модулем создаваемой программной платформы.

Вторая задача исследований заключается в создании модуля, элементы которого управляют функционированием аппаратных компонентов узлов EVB8871. В совокупности данный модуль позволяет управлять работой узлов БСС: выполнять программу центрального микропроцессора узла, управлять режимами энергопотребления, конфигурировать таймеры, тактовые переключатели, светодиоды, датчики и т. д. Иными словами, данный модуль выполняет основные функции ОС. Отдельное внимание уделяется элементу, отвечающему за контроллер OLED-дисплея.

В качестве приемопередатчика узлы EVB8871 оснащены микросхемой Texas Instruments CC2520, представляющей собой ZigBeeTM/IEEE 802.15.4 трансивер второго поколения, специально спроектированный для радиочастотных приложений диапазона 2,4 ГГц с аппаратной поддержкой обработки пакетов, буферизации данных, шифрования и аутентификации данных, оценки уровня зашумленности канала, индикации уровня радиосигнала и временной информации о пакетах [5]. Эта микросхема является самостоятельным процессором, которым надо управлять для выполнения требуемых действий. Поэтому формулируется третья задача, полностью посвящённая приемопередатчику. Она включает в себя конфигурирование

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

Таким образом, создаваемая программная платформа для разработки прикладных БСС должна включать в себя три модуля, которые будут созданы в результате решения трёх поставленных задач.

Работа с семейством микропроцессоров MSP430 на UNIX-подобных ОС

Первая задача исследований заключалась в разработке инструмента для конфигурирования РМП с использованием UNIX-подобных ОС. В качестве основы РМП выбрана ОС Debian GNU/Linux версии 7.6.

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

Рисунок 2. Состав первого модуля.

Для работы с семейством микропроцессоров MSP430 используется инструментарий GCC (GNU Compliler Collection), представляющий собой набор программных модулей, позволяющих добавить MSP430 к списку целевых платформ пакета GNU. При этом разработка может производиться как в среде Windows, так и в среде Linux. Необходимый набор утилит Binutils пополнен ассемблером, компоновщиком и конвертором объектных файлов для MSP430.

Для упрощения разработки программного кода разработчику предлагается

рабочая среда свободного пользования Eclipse.

Для облегчения каждого этапа разработки созданы отдельные инструкции, описывающие рабочие процессы, а примеры приложений позволяют лучше усвоить материал прикладным разработчикам. В примерах задействованы большинство аппаратных компонентов узла EVB8871. Демонстрируется работа центрального микропроцессора, датчиков, OLED-дисплея, приемопередатчика, работа тактовых переключателей и светодиодов.

Управление аппаратными компонентами узла EVB8871

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

Установленный в составе EVB8871 цветной OLED-дисплей существенно упрощает работу с ресурсами узла, позволяя отображать текстовую и графическую информацию, что является удобным инструментом при отладке программ. Обработка отображаемой на OLED-дисплее информации, а также управление OLED-дисплеем производится специализированным контроллером, выполненном на микросхеме 4D Systems GOLDELOX—SGC. Обмен информацией между данным контроллером и центральным микропроцессором производится по интерфейсу UART.

Для управления OLED-дисплеем созданы процедуры, позволяющие прикладному разработчику инициализировать дисплей, выбирать цвет выводимых

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

Рисунок 3. Состав второго модуля. Для формирования уникального MAC-адреса узла EVB8871, необходимого для идентификации в БСС, используется микросхема UniqueID Maxim Integrated DS2411. Адрес, содержащийся в микросхеме UniqueID, также может использоваться как серийный номер устройства. Взаимодействие центрального микропроцессора и

этой микросхемы осуществляется при помощи интерфейса 1-Wire.

Также в рассматриваемый модуль входят процедуры, позволяющие управлять тактовыми переключателями и светодиодами.

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

Работа с приемопередатчиком CC2520

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

Стек протоколов структурирован по эталонной модели OSI, где для БСС используются 4 уровня: физический, канальный, сетевой и прикладной (см. рис. 4).

Рисунок 4. Уровни стека протокола для БСС.

За работу беспроводной сети отвечает сетевой уровень. На текущий момент реализованы топологии сети классов «линия», «звезда» и «дерево» (см. рис. 5). В

настоящий момент ведётся разработка ячеистой топологии сети [6].

Рисунок 5. Топологии БСС.

Применение результатов

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

Предлагается дополнить изучение планет и спутников сейсмическими исследованиями с использованием распределённой на поверхности небесного тела БСС. Узлы БСС могут быть размещены на поверхности планетоходом или отстрелены при снижении посадочного модуля.

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

В качестве инструмента сейсмических исследований предлагается использовать множество узлов с датчиками. Количество таких узлов может исчисляться десятками или сотнями. Каждый узел имеет в своём составе акселерометры, позволяющие обнаруживать колебания узлов.

Необходимое количество таких узлов размещается в заранее заданном районе планеты или спутника. Расстояние между узлами может варьироваться, учитывая различные физические препятствия. Каждый узел выполняет тривиальную работу -измеряет параметры среды и передаёт эти данные узлу-координатору. Узел-координатор располагается на планетоходе или посадочном модуле. Продолжительность работы узлов может исчисляться месяцами или даже годами без подзарядки. Для пополнения запаса энергии может использоваться излучение Солнца. БСС обладает способностью к самоорганизации и может функционировать автономно. Исследования проводятся автоматически, и все что нужно - это передать результаты измерений узлу-координатору для последующей передачи массива собранных данных командному пункту на Земле [7].

Узлы на поверхности исследуемого небесного тела могут быть размещены несколькими способами. Первый - это использование планетохода (см. рис. 6). Доставка узлов производится однократно, после чего возвращаться к узлу необходимости нет. Некоторая избыточность в размещении узлов БСС обеспечивает надёжность сети: выход из строя одного или нескольких узлов не влечёт потерю работоспособности всей сети, пакеты с результатами измерений будут доставлены узлу-координатору при помощи альтернативных маршрутов. Недостатками размещения узлов планетоходом являются малое покрытие сети (марсоходы/луноходы на сегодняшний день преодолели не более 45 км) и низкая скорость построения БСС.

Рисунок 6. Расположение узлов сети планетоходом. Топология сети — «линия».

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

БСС на телах солнечной системы могут быть созданы не только в целях сейсмических исследований, список идей применения может быть расширен, к примеру, БСС могут позволить изучить полярные шапки Марса. Известно, что зимой полярная шапка разрастается в поперечнике, а с наступлением лета возросшая часть испаряется. Возникают вопросы, что при этом происходит, и какие создаются условия в результате подобных процессов. Детальные ответы на эти вопросы могут быть найдены с помощью БСС, узлы которых в соответствующем исполнении способны работать продолжительное время в самых агрессивных условиях внешней среды.

На узлах могут быть установлены любые датчики: как самые тривиальные (температуры, влажности, давления и т.д.), так и способные выявлять более сложные явления, к примеру, окисление железа и наличие освобождённого метана. Узлы БСС имеют небольшие размеры и массу. Для космических исследований это критически важный момент, учитывая, что груз должен транспортироваться с Земли.

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

Выводы

Все три поставленные задачи решены, что позволяет говорить о разработке программной платформы из трёх модулей: конфигурирование рабочего места программиста прикладных БСС, управление ресурсами узлов EVB8871 (по сути — миниатюрная ОС), управление приемопередатчиком Texas Instruments CC2520. С использованием созданной программной платформы становится возможным разрабатывать прикладные БСС, в т. ч. для космических исследований.

Благодарность

Автор выражает благодарность своему научному руководителю, доценту кафедры

609 МАИ Терентъеву Максиму Николаевичу.

Исследование выполнено при финансовой поддержке РФФИ в рамках научного проекта № 14-08-01028а.

Список используемых источников

1. Падалко С.Н., Терентьев М.Н. Автоматизированное проектирование адаптивных дискретных беспроводных сенсорных сетей для космических систем: Учебное пособие. - М.: Изд-во МАИ, 2013. -128 с.

2. Махорин А.О., Падалко С.Н., Терентьев М.Н. Математическая модель многошлюзовой беспроводной самоорганизующейся сети произвольной

топологии в аэрокосмической системе // Вестник компьютерных и информационных технологий. 2015. № 3 С. 28-32.

3. Code Composer Studio (CCS) Integrated Development Environment (IDE) -CCSTUDIO - TI Tool Folder, URL: http://www.ti.com/tool/ccstudio

4. IAR Embedded Workbench Kickstart - IAR-KICKSTART - TI Software Folder: http://www.ti.com/tool/iar-kickstart

5. CC2520 | ZigBee (IEEE 802.15.4 / ZigBee PRO) | Wireless Connectivity | Description & parametrics, URL: http://www.ti.com/product/CC2520

6. Коршиков С.Б., Мусолов М.Н., Терентьев М.Н. Возможности использования метода результативного искажения при создании сложных технических систем в высокотехнологичных отраслях промышленности // Труды МАИ, 2011, №47: http://www.mai.ru/science/trudy/published.php?ID=26968

7. Гинзбург И.Б., Падалко С.Н., Автономные веб-приложения для систем обработки космической информации // Труды МАИ, 2015, №82: http://www.mai.ru/science/trudy/published.php?ID=58832

i Надоели баннеры? Вы всегда можете отключить рекламу.