Проект «RobotNET»

advertisement
Муниципальное бюджетное общеобразовательное учреждение
города Кургана «Гимназия №47»
Проект
«RobotNET»
Авторы проекта: команда «Blast»
Благинин Дмитрий и Дмитриев Александр,
учащиеся 8 класса
МБОУ города Кургана «Гимназия №47»
Руководитель проекта: Корюкина
Татьяна Михайловна, учитель информатики
МБОУ города Кургана «Гимназия №47»
Курган, 2015г.
1
Структура проекта
С давних пор важно разделять труд и обязанности. На основании
такого принципа работает всё в современном мире: телефон, компьютер,
люди в компаниях, автомобили. Разделение труда применяется и в
исследованиях роботов: обычно каждый компонент в системах, в том числе
системах с применением роботов, отвечает за что-то своё. Приведем пример
из реальной жизни: допустим, не все люди знают, как вырезать аппендицит
или строить ракеты, но это им и не нужно, так как в обществе найдутся
профессионалы в этих областях. То же самое и с роботами. Не нужно, чтобы
каждый робот мог уметь делать все, гораздо лучше разделить обязанности
между группой роботов (разделяй и властвуй) и объединить их в одну сеть.
Мы предлагаем создать систему «RobotNET», принцип работы которой и
заключается в разделении обязанностей между роботами.
Цель
проекта:
разработать
технологию
системы
по
проведению
исследований на территории, имея сервер, исследовательские комплексы и
микроисследователей.
Задачи:
∙ Разработать технологию проекта.
∙ Создать программные решения, необходимые для функционирования
продукта.
∙ Используя технологию проекта, развернуть систему роботов и оценить её
эффективность.
∙ Разработать методы навигации роботов в пределах местности
2
План работы:
1.
Разработать принцип работы системы.
2.
Составить алгоритм работы системы.
3.
Спроектировать систему.
4.
Составить структуру.
5.
Написать техническое задание к аналитическим роботам. Создать
пример для конкретной ситуации.
6.
Написать серверную часть как готовую для развёртывания, для работы.
7.
Разработать программу определяющею местоположение роботов на
поле с помощью компьютерного зрения.
8.
Наладить взаимодействие частей системы между собой.
9.
Заняться доработкой.
Структура системы
Сейчас большинство исследований разделяются на два типа —
распознать какой-нибудь объект и провести с ним более детальную работу.
Система построена по такому же принципу — состоит из аналитических
роботов, которые могут провести исследование объектов на те параметры,
что необходимы исследователям, а также небольших микроисследователей,
снабжённых набором датчиков, объединённых
многоранговая
звезда.
Исследование
начинают
между собой связью
микроисследователи,
которые, в отличие от крупных представителей, отличаются небольшой
ценой и весьма мобильны, но не всегда способны провести точное
исследование, хотя им это и не нужно: цель их работы заключается в
обнаружении объектов (воды, растений, животных, полезных ископаемых),
исследование которых входит в цель экспедиции. При этом таких роботов
очень много, что позволяет быстро исследовать необходимую область. При
3
этом роботы работают вместе — в то место, что исследовал один робот не
поедет другой. Это происходит благодаря серверу, который разделяет работу.
К слову, он же организует взаимодействие между микроисследователями и
аналитическими
роботами.
На
сервер
приходят
результаты
работы
микроисследователей. Тут же, в зависимости от сложности исследований, эти
данные могут обрабатываться. Когда сервер определяет то, что объект,
который
заинтересовал
микроисследователя,
действительно
имеет
потенциальный интерес, он посылает сигнал аналитическому роботу,
например: «Транспортируй это в лабораторию, я хочу это исследовать» или,
если технические возможности робота позволяют выполнить исследование
самому: «Исследуй это прямо там».
Сама система представляет собой несколько роботов, где у каждого есть
своя цель и текущая задача, а также сервер, который эти задачи раздаёт.
Роботы делятся на две категории:
●
Аналитическая аппаратура: роботы, которые с помощью дорогой
аппаратуры могут проводить точные исследования, но из-за неё же не
обладающие способностью быстрого и безопасного перемещения на
местности.
●
Микроисследователи: небольшие в размере, которые с помощью своего
набора датчиков могут лишь собирать первичные данные и передавать
их на сервер, но зато быстры и низки в стоимости.
Микроисследователи не отличаются большой ценой и в проекте их можно
использовать больше тысячи.
4
По принципу работы системы сервер посылает этих роботов на исследование
области, чтобы они нашли интересующие объекты.
Таким образом, структура системы выглядит следующим образом:
Взаимодействие
Компонент
Выполняемые
с другими
системы
функции
компонентами
Особенности
Технология
системы
Сервер
Координирует
Обрабатывает
Необходим
работу
собранные
всего один на обработки
микроисследов микроисследоват всю систему.
ателей,
елями
аналитических
проводит
Сервер
Wi-Fi модуль.
данные,
их
роботов и их обработку.
взаимодействи
е
друг
другом.
Посылает
с аналитических
роботов,
даёт
задание каждой
группе роботов,
с
целью
обработки
большей
площади.
Аналитическ
5
Серьёзные
Получают
цель Большая
и
Датчики,
ие роботы
тематические
(то, какое место стоимость
необходимые
исследования.
нужно посетить (компенсируе для какого-то
и какую работу тся, за счёт конкретного
там выполнить) хорошей
случая.
от сервера. Туда работы даже
же
отправляют при
одном
результаты
таком
работы.
роботе).
Микроисслед Собирают
Получают
от Небольшая
ователи
необходимые
сервера цель (то, стоимость
данные.
какое
Минимальный
и набор
место их
датчиков,
нужно посетить кастомизируе которые
и какую работу мость, может позволяют
там выполнить). использовать
Туда
идентифициро
же ся от десяти вать объекты,
отправляют
до тысячи из- работа
результаты
за
работы.
стоимости.
своей которыми
входит в цель
операции.
6
с
Между тем состав микроисследователей или аналитических роботов может
меняться от проекта к проекту: например, при поиске живых объектов
микроисследователей
нужно
снабдить
инструментами
и
датчиками,
способных транспортировать или выявлять живые организмы, а при поиске
людей под завалами уже тепловизором и специальными локаторами.
Рассмотрим принцип работы нашей системы на примере исследования новой
планеты. Мы посылаем корабли в сотни звездных систем. Наша цель - найти
планету, пригодную для жизни. При входе в атмосферу часть коробля
выбрасывает
тысячи
микроисследователей
маленьких
на
летающих
поверхность.
Они
(плавающих,
начинают
ездящих)
сканировать
территорию на наличие выделяющихся из ландшафта предметов (лед, живые
организмы, растения, руда). После обнаружения микроисследователем
интересующего объекта, он посылает сообщение на сервер. После того центр
проводит анализ полученных данных и, если его все устраивает, он посылает
аналитического робота на место находки.
7
Целесообразность использования проекта
Наша система тоже проводит исследования территорий, как это делают
существующие аналоги, по сути, мы так и продолжаем посылать
исследовательский комплекс роботов, однако сейчас все компоненты
находятся не в одном роботе, а распределены в пределах системы. К плюсам
такого подхода по сравнению со стандартными методами проведения
исследований (работа одиночного робота) можно отнести:
●
высокая скорость работы;
●
большая площадь покрытия, в условиях ограниченного времени;
●
большая независимость системы;
●
меньший риск поломки системы в целом;
●
больший срок автономной исследовательской работы.
Описание компонентов системы:
Сервер
Принимает и обрабатывает данные. Вычислительная мощность варьируется,
исходя из количества роботов и информацию, которую необходимо будет
обработать.
Выступает в роли связующего звена между всеми роботами.
Также в роли сервера может выступать один из роботов. Допустим, при
гибели основного сервера начнется голосование между всеми частями
системы. И его обязанности по управлению могут перейти другому роботу с
самым мощным процессором или самой заряженной батареей.
Микроисследователи
Сканируют территорию с целью обнаружения интересных для исследования
компонентов.
8
Аналитические роботы
Имеет мощные исследовательские компоненты, благодаря чему могут
производить
детальный
анализ
объектов,
которые
заинтересовали
микроисследователей.
Этапы реализации проекта
Для испытания эффективности проекта, мы собрали комплекс роботов,
использующий технологию, представленную в этом проекте.
Цель собранного комплекса: применить технологию проекта при работе
роботов на территории.
Принцип: на площадке расположен интересующий нас объект. Нам
необходимо оценить его свойства и, если данный объект нам действительно
необходим, транспортировать его на базу.
Технология системы:
В данном проекте мы реализовали двух роботов: один из них - камера
закрепленная над полем на штативе, а второй — аналитический.
Один робот микроисследователь располагается перпендикулярно полю и
выполняет функцию наблюдения и передачи данных о местоположении
объектов, располагающихся на поле с помощью камеры. Его назовем первым
микроисследователем.
9
Предположим,
что
второй
микроисследоватесь
уже
сам
нашел
интересующий нас объект, и он зажигает на себе лампочку, что бы его
заметила камера над полем. После чего сервер выстраивает траекторию от
аналитического робота до микроисследователя из любой точки поля.
После прибытия аналитический робот может изучить или транспортировать
объект.
I.
Организационный этап.
Была определена структура системы, её компоненты, их взаимодействие
между собой. Определён дальнейший план работы.
В ходе этого этапа перед нами возникла проблема.
Для эффективной работы системы потребуется точно знать, в какой точке
на местности располагается робот. Сейчас существует множество
технологий для решения этой задачи: Wi-Fi, глонасс, инфракрасная сеть.
Мы выбрали вариант, основанный на технологии компьютерного зрения:
робот,
что
располагается
местоположение
объектов.
перпендикулярно
Он
передаёт
полю,
серверу
определяет
данные
о
местоположении объектов на поле, а тот в свою очередь строит маршрут.
Такой поход не требует сверх дорогого оборудования (достаточно
обычной веб-камеры), работает на необходимой точности, располагает
существующими разработками в этой области. Словом подходит для
демонстрации технологии.
10
Конечно, подобная система может быть реализована и другими методами. Но
преимущество нашей технологии и заключается в гибкости, что позволяет
выбирать
каждую технологию (в том числе и рассматриваемую в этом
вопросе технологию определения на местности), персонально под каждый
проект.
Робот микроисследователь-1 (Над полем)
Примерный вид микроробота исследователя (базовая комплектация)
11
Принцип работы:
На этапе включения роботов, микроисследователь-1
уже расположен
перпендикулярно карте, а два остальных робота находятся на поле.
Если
камера
замечает
сигнал
от
микроисследователя,
что
объект
представляет ценность, то теперь необходимо его транспортировать. Так как
микроисследователи на транспортирование не способны, сервер отправляет
аналитического робота. Он переносит объект на базу.
Таким образом, мы разработали схему реального использования системы
поисково-исследовательских проектов. Так, в роли интересуемых объектов
могут быть люди, камни, драгоценности, а роботы, соответственно должны
быть снабжены соответствующими датчиками.
II.
12
Этап реализации северной части.
Сначала был разработан многопоточный сервер(на языке Java) под нужды
системы.
III.
Прошивка блока ev3 на linux Ev3dev.
IV.
Этап создания алгоритмов управления моторами для блока EV3
(на языке программирования perl).
Создание собственной сети Wi-Fi, к которой подключаются все
V.
элементы системы.
VI.
Сборка прототипа системы.
Сбор прототипа заключался в реализации всех компонентов нашей системы.
Для создания аналитического робота мы:
собрали раму из деталей Lego и компьютера EV3;
-
13
прикрепили моторы к раме и собрали все оставшиеся компоненты;
-
14
прикрепили датчик.
Итоговый робот выглядит таким образом.
В итоге у нас получилась цельная система для исследования местности.
VII Апробационный этап.
Итоговая разработанная нами система на данный момент:
●
способна подключать к себе любых роботов, которые удовлетворяют
минимальным требованиям:
15
●
○
наличия сетевого модуля;
○
наличие процессора;
○
возможности исполнения скриптового кода (Perl, Bash);
○
способность исполнять запросы системы;
предоставляет интерфейс для отслеживания выполняемых работ между
роботами человеку;
●
способна организовывать роботов, исходя из их возможностей;
●
собирать с роботов их техническую комплектацию и определять их
возможности.
Ссылка на видео — https://www.youtube.com/watch?v=EELcdt-WyHE
16
Заключение
Нам удалось составить принцип работы системы, её спроектировать,
составить структуру проекта, написать техническое задание к аналитическим
роботам и микроисследователям, написать серверную часть, готовую для
развёртывания и работы, наладить взаимодействие всех частей системы
между собой. Исходя из этого, мы делаем вывод о достижении цели проекта.
Сервер написан на языке Java в среде программирования IntelliJ IDEA,
программное обеспечение для робота было написано на языке Perl.
Наша команда достигла цели, поставленной в этом проекте. Однако мы
видим существование данного продукта и вне представленной работы.
Поэтому мы и дальше будем работать над этим проектом: раскрывать новые
вопросы, предусматривать проблемы и модернизировать систему. Именно
это и стало вектором нашей дальнейшей работы.
17
Литература
1.
Григорьев Д.В., Степанов П.В. Внеурочная деятельность школьников:
методический конструктор. – М.: Просвещение, 2011г. – 223с.
2.
Копосов Д.Г. Первый шаг в робототехнику: практикум для 5-6
классов.-М.: БИНОМ. Лаборатория знаний, 2012г. – 286с.
3.
Юревич Е.И. Основы робототехники. – 2-е изд., перераб. и доп. –
СПб.: БХВ-Петербург, 2005г. – 416с.
4.
Каширин Д.А., Федорова Н.Д. Основы робототехники: учебное
пособие 5-6 класс. – Курган: ИРОСТ, 2013. – 240с.
Интернет-ресурсы
1. http://www.nxtprograms.com/
- примеры разработок роботов из
LEGOMindstormsNXT.
2. http://www.brainstorming.ru – научно-методический сайт, материалы по
развитию творческого мышления и интеллекта.
3. http://lego.rkc-74.ru/ - Ассоциация образовательной робототехники.
18
Download