WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!


Pages:     | 1 |   ...   | 3 | 4 || 6 | 7 |   ...   | 14 |

Сведения об авторе Пенской Александр Владимирович — студент; Санкт-Петербургский государственный университет информационных технологий, механики и оптики, кафедра вычислительной техники; E-mail: ryukzak@gmail.com Сборник трудов молодых ученых и сотрудников кафедры ВТ 34 КОМПЬЮТЕРНЫЕ СИСТЕМЫ И СЕТИ УДК 004.ПЕРСПЕКТИВЫ ПРИМЕНЕНИЯ БЕСПРОВОДНЫХ СЕНСОРНЫХ СЕТЕЙ В ЗАДАЧАХ УПРАВЛЕНИЯ МОБИЛЬНЫМИ РОБОТАМИ Д. А. Киров Рассмотрены перспективы интеграции мобильных роботов и беспроводных сенсорных сетей (БСС) в единую систему. Проанализированы наиболее актуальные задачи развития БСС применительно к созданию систем позиционирования мобильных роботов и управления ими.

Представлен проект системы управления мобильными объектами (Mobile Objects Control System – MOCS), основной целью которой является прототипирование реальных систем и изучение их характеристик.

Дано описание MOCS как дополнительного уровня в архитектуре аппаратных абстракций операционных систем TinyOS.

Ключевые слова: беспроводные сенсорные сети, мобильный робот, промежуточное программное обеспечение, TinyOS, системы позиционирования объектов, Networked Embedded Robotics.

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

На сегодняшний день широко развивается робототехника, в частности мобильные роботы, способствующие автоматизации различных сфер человеческой деятельности. Исследовательские проекты по управлению роботами, определению их местоположения и организации их коллективного взаимодействия становятся все более актуальными. Системы, состоящие из мобильных объектов (роботов) и малогабаритных «умных» датчиков и актюаторов, формируют понятие «встраиваемой в сеть робототехники» (Networked Embedded Robotics [1]), используемое многими исследовательскими группами. Подобные системы могут найти применение в логистике, охране, «умных домах», мониторинге различных природных процессов и т.п.

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

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

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

Сборник трудов молодых ученых и сотрудников кафедры ВТ КОМПЬЮТЕРНЫЕ СИСТЕМЫ И СЕТИ Однако наряду с перечисленными достоинствами можно выделить ряд проблем, имеющихся в настоящий момент у БСС как в рамках всей технологии, так и специфичных для описываемой области. Главной из них является высокая сложность разработки программного обеспечения для сенсорных узлов. Здесь необходимо понимание устройства разрабатываемой системы на всех ее уровнях, с чем может справиться далеко не каждый прикладной программист. Интерфейсы, предоставляемые существующими специализированными операционными системами (ОС), зачастую не позволяют создать конечное ПО без затрагивания особенностей аппаратной реализации. Данный вопрос актуален, в частности, и для систем управления мобильными роботами на основе БСС, в которых важно наличие различных функций вычисления координат объектов и расстояний между ними, передачи управляющих команд и обработки принимаемых данных. Подобные функции в имеющихся ОС (например, TinyOS) не реализованы и, более того, они зачастую взаимодействуют со специфической аппаратурой (например, с ультразвуковыми дальномерами), поддержка которой также может отсутствовать.

Развитию систем управления мобильными роботами на основе БСС препятствует недостаток средств моделирования и прототипирования подобных систем. Адаптировать под данную задачу существующие программные пакеты (например, PtolemyII, SensorSim и др.) достаточно сложно.

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



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

Обзор существующих проектов Как уже было сказано, тестовые платформы для исследования систем, состоящих из мобильных роботов и БСС, на данный момент представлены лишь в небольшом количестве. Из рассмотренных автором проектов (PEIS [1], Sentire [2], Mobile Emulab [3], Player [4]) наиболее интересен проект Player. Он включает в себя набор серверного ПО, непосредственно взаимодействующего с роботом и сенсорной сетью, и клиентскую часть, основной задачей которой является обработка поступающей информации и контроль состояния соответствующих устройств. Обмен командами и данными между клиентом и сервером происходит через специально разработанный интерфейс Player по протоколу TCP [4]. На рис. Сборник трудов молодых ученых и сотрудников кафедры ВТ 36 КОМПЬЮТЕРНЫЕ СИСТЕМЫ И СЕТИ схематически изображено устройство исследовательской платформы на основе описываемого проекта.

Уровни архитектуры Устройство системы Прикладная Прикладная...

Client программа программа ПО Player Server Взаимодействие ПО для испытательного стенда (БСС) процессов Client ПО Интерфейс Player Player Client (независим от платформы, языка) ПК Player Server Client ПО Центральный Интерфейс Player (Робот) контроллер Player Server Интерфейс Player Player Взаимодействие Server Client Аппаратная часть, ОС ПО процессов (Робот) БСС Робот 1 Робот 2 Робот N...

Рис. 1. Исследовательская платформа на базе проекта Player Как можно видеть из левой части рис. 1, компоненты Player (Client и Server) играют роль промежуточного ПО между устройствами (с управляющей ими ОС) и пользовательскими приложениями, функционирующими на клиентских машинах. В правой части изображено устройство системы. Компонент, называемый Server, устанавливается отдельно на контроллер каждого мобильного робота, а также на центральный узел сенсорной сети (он собирает информацию с других узлов, а также ретранслирует в сеть получаемые команды и запросы). Клиентская часть может взаимодействовать с любой серверной через унифицированный интерфейс (Player Interface [4]). Компоненты Client функционируют в рамках пользовательских процессов, выполняющих конкретную задачу. Взаимодействие процессов осуществляется через центральный контроллер, что особенно актуально в том случае, когда они выполняются на разных устройствах (например, разные роботы управляются с разных устройств — ноутбуков, КПК, специализированных контроллеров и т.п.).

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

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

Сборник трудов молодых ученых и сотрудников кафедры ВТ КОМПЬЮТЕРНЫЕ СИСТЕМЫ И СЕТИ Mobile Objects Control System Предлагаемый в настоящей работе проект Mobile Objects Control System (система управления мобильными объектами, MOCS) базируется на аппаратно-программной платформе iNode и специализированной операционной системе TinyOS, являющейся де-факто стандартом в области сенсорных сетей. Основная цель проекта — создание промежуточного уровня между ОС TinyOS и прикладным ПО для сенсорных узлов. Он включает в себя реализации различных методов позиционирования объектов (например, определение расстояний на основе силы принятого сигнала, вычисление координат при помощи триангуляции и др.), менеджер ресурсов, контролирующий состояние и занятость определенных датчиков и роботов, функции, отвечающие за обмен данными и управляющей информацией между мобильными роботами и БСС и т.п. В целом MOCS представляет собой дополнительный уровень абстракции, скрывающий особенности реализации вышеперечисленных функций и предоставляющий удобный API для уровня прикладных программ, значительно снижая сложность их разработки. В то же время развитие проекта будет способствовать проведению экспериментальных исследований с различными методами определения местоположения объектов и сетевыми протоколами и выбору определенной конфигурации для прототипа конкретной системы, т.е. во многом упростит процесс проектирования.

Рис. 2. MOCS как дополнительный уровень в архитектуре TinyOS На рис. 2 показано, что MOCS представляет собой дополнительный слой в архитектуре аппаратных абстракций TinyOS. Сама ОС включает в себя три уровня (уровень Представления (HPL), уровень Адаптации (HAL) и уровень Интерфейсов (HIL) [5]), последовательно скрывающие особенности реализации оборудования под едиными платформонезависимыми интерфейсами, посредством которых разработчик может получать доступ к различным аппаратным компонентам узлов. Фактически MOCS — это комплект программных библиотек, содержащих реализации упомянутых выше функций; он взаимодействует с нижележащими уровнями TinyOS, а для верхнего уровня предоставляет API.





Компоненты MOCS можно включать в прошивку каждого датчика, что позволит сделать узлы сети равноправными во многих аспектах (участие в обработке данных с мобильных роботов, принятие решений о выдаче им простейших команд и т.п.). Данная особенность поСборник трудов молодых ученых и сотрудников кафедры ВТ 38 КОМПЬЮТЕРНЫЕ СИСТЕМЫ И СЕТИ зволит сделать систему более децентрализованной, устойчивой к отказам отдельных узлов, а в дальнейшем развитии проекта — максимально автономной, минимизирующей участие человека в процессе контроля мобильных роботов и управления ими.

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

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

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

Практическим результатом работы является описание MOCS — системы управления мобильными объектами, основной задачей которой является упрощение процессов проектирования и разработки конкретных решений в области «встраиваемой в сеть робототехники».

Система представлена как набор промежуточного ПО между ОС TinyOS и уровнем пользовательских приложений.

ЛИТЕРАТУРА 1. Bordignon M., Pagello E., Saffiotti A. An Inexpensive, Off-The-Shelf Platform for Networked Embedded Robotics // Intern. Conf. on Robot Communication and Coordination (RoboComm).

Athens, Greece, 2007. October.

2. Branch J.W., Davis J.S. II, Sow D.M., Bisdikian C. Sentire: A Framework for Building Middleware for Sensor and Actuator Networks // Proc. 3rd Intern. Conf. on Pervasive Computing and Communications Workshops. 2005.

3. Johnson D., Stack T., Fish R. et al. Mobile Emulab: A Robotic Wireless and Sensor Network Testbed // IEEE INFOCOM, April 2006.

4. Jimenez A., Martinez-de Dios J. R. et al. Towards an open tested for the cooperation of robots and wireless sensor networks. Sevilla, Spain: University of Sevilla, 2010.

5. [Электронный ресурс]: .

Сведения об авторе Киров Дмитрий Александрович — аспирант; Санкт-Петербургский государственный университет информационных технологий, механики и оптики, кафедра вычислительной техники; E-mail: kdedge@mail.ru Сборник трудов молодых ученых и сотрудников кафедры ВТ КОМПЬЮТЕРНЫЕ СИСТЕМЫ И СЕТИ УДК 004.ВЗАИМОДЕЙСТВИЕ GPU И CPU НА КРИСТАЛЛЕ С ИСПОЛЬЗОВАНИЕМ РАЗДЕЛЯЕМОЙ ПАМЯТИ А. А. Герасимов, И. В. Перминов Предложено ускорять совместную работу процессора общего назначения (CPU) и параллельного мультипроцессора с функциями графической обработки (GPU) на одном кристалле, дополнив функциональность кэша второго уровня специализированными буферами для обмена между процессорами. Проведена качественная оценка увеличения производительности при внедрении.

Ключевые слова: CPU, GPU, интеграция СнК, стена памяти.

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

Рис. 1. Типичная структура системы, содержащей CPU и GPU В последнее время появились сообщения о решении этой проблемы в промышленности [1], однако это коммерческие решения, детали которых не разглашаются. В то же время совместная работа может быть полезна для решения вычислительных задач, поскольку GPU могут эффективно выполнять множество однотипных задач одновременно и имеют несравнимую с CPU вычислительную мощность, в то время как CPU могут выполнять структурносложные алгоритмы с большим количеством ветвлений [2]. Иначе говоря, CPU может управлять вычислительным процессом, а GPU непосредственно его осуществлять.

На данный момент взаимодействие между CPU и GPU происходит следующим образом:

CPU подготавливает данные и записывает их в системную память, расположенную на отдельной микросхеме. Только после того как запись полностью завершена, CPU подает GPU Сборник трудов молодых ученых и сотрудников кафедры ВТ 40 КОМПЬЮТЕРНЫЕ СИСТЕМЫ И СЕТИ сигнал о том, что данные готовы и их можно считывать, затем следуют загрузка данных в GPU и их разбор. Подобным образом происходит передача в обратном направлении. Таким образом, задержка передачи оказывается неоправданно высокой для устройств, расположенных на одном кристалле (по данным [3], задержка записи в системную память составляет порядка сотен тактов GPU), пропускная способность также страдает вследствие ограниченного числа выводов микросхемы.

Pages:     | 1 |   ...   | 3 | 4 || 6 | 7 |   ...   | 14 |










© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.