ГЛАВНАЯ | ТЕХ. ИНФО. | СДЕЛАТЬ | КУПИТЬ | ПОУЧАСТВОВАТЬ | ПРИМЕРЫ | BLOG | О НАС |
Для кого этот робот предназначен?
На данный момент, мы видим две основных группы людей, для которых наша платформа может быть интересной. Первая группа - это исследователи (студенты, аспиранты, профессора) занимающиеся робототехникой, искуственным интеллектом и машинным зрением. Вторая группа - это хобби-разработчики (самодельщики) занимающиеся изготовлением роботов и написанием программного обеспечения для них. В качестве основных требований к нашей платформе мы сформулировали следующие критерии:- должна быть полностью открытой (программы, механика и электроника)
- оснащена типичным набором необходимых сенсоров
- легко модифицируемой для оснащения дополнительными сенсорами и другим оборудованием
- иметь экономичный, но достаточно мощный бортовой компьютер
- предоставлять возможность двухсторонней связи для передачи данных от сенсоров и комманд управления в реальном времени
- предоставлять базовый набор программных модулей для распределенной обработки данных и работы с используемой электроникой. Это должно позволить разработчикам концентрироваться на их экспериментах и не тратить время на низкоуровневое программное обеспечение
- иметь существенно более низкую стоимость чем сравнимые по оснащению платформы доступные на рынке
Шасси и корпус
Для текущей модели мы используем готовые гусеничные шасси Dagu Rover 5 с двумя моторами оснащенными датчиками угла поворота. Корпус изготовлен полностью с использованием технологии трёхмерной печати и имеет:- вращающуюся "голову" на которую установлены видео-камеры
- складывающуюся мачту для установки сенсоров чувствительных к электро-магнитному излучению (например - компас)
- место для сменного аккумулятора
- задвижки для доступа к разъёмам внутренней электроники
- варианты расширения для установки дополнительной электроники, сенсоров и моторов
На первых двух фотографиях показана текущая модель нашего робота. На последних двух представлены отрендеренные 3D модели альтернативных корпусов.
Сенсоры и бортовая электроника
В полном оснащении на робот установлены следующие сенсоры:- четыре ультразвуковых дальномера (по сторонам, спериди и сзади)
- две видео камеры
- цифровой компас с компенсацией наклонов
- приёмник GPS
Связь
В обычной конфигурации робот оснащен IEEE 802.11 b/g/n WLAN-адаптером. Сейчас мы так же тестирум управление роботом через 3G-модем (UMTS). На данный момент имеется возможность (предоставляется неопходимое программное обеспечение) удаленновго управления роботом через Интернет с используя видео информацию, получаемую с бортовых камер и других сенсоров. Также поддерживатеся режим автономной навигации. В дополнение, мы поддерживаем так-называемый cloud-robotics режим в котором информация с бортовых сенсоров может быть передана по сети на мощный компьютер(ы) на котором, с использованием сложных вычислительных алгоритмов, будет приниматься более качественные навигационные решения чем это возможно с использованием бортового компьютера.Программное обеспечение
Все наше программное обеспечение (ПО) является открытим и is доступно на git-hub. Мы предоставляем полный набор программных модулей начиная с операционной системы заканчивая модулями для связи по сети и клиентскими приложениями для визуализации и ручного управления через Интернет.- мы предоставляем специально собранный имидж операционной системы на основе популярного дистрибудтива Angstrom Linux спецально оптимизированного для BeagleBoard.
- Мы используем Xenomai для задач реального времени таких как низкоуровневое управление моторами и других задач.
- сенсоры и актуаторы доступны удаленно (через сеть) используя предоставляемые программные модули.
- для коммуникации по сети мы используем библиотеки ZeroC's Ice (Internet Communication Engine).
- это позволяет использовать широкий набор современных языков программирования (C++, Python, Ruby, Java and all .Net-languages) для разработки нового ПО.
- Также, благодаря библиотеке Ice, разработчикам доступны различные модели организации связи по сети. Например, Publisher/Subscriber, RPC-стиль (удаленный вызов процедур) и т.д. Это предоставляет широкие возможности при разработке новых программных компонент и алгоритмов.
Левая панель отображает оригинальный видео-поток с бортовой камеры. Правая - обработанный с помощью библиотеки OpenCV (в даннос примере использовался алгоритм распознавания контуров Канни). В нижней части панели управления находятся индикаторы оборотов моторов, данных от дальномеров, компаса и т.д.
Чтобы показать, как можно использовать нашу платформу при решении типичных проблем в области робототехники, мы реализовали некоторые домашние задания приведенные в онлайновом курсе "Программирование автономного автомобиля" профессора Себастиана Труна (Sebastian Thrun). Эти примеры, также иллюстрируют возможности применения нашей платформы в сфере образования. В частности, по сравнению с популярной платформой LEGO Mindstorms, наша робот обладает значительно более мощным бортовым компьютером и имеет более гибкую открытую систему программных модулей для решения типичных проблем в области робототехники. В данный момент, cloud-robotics и распределенные системы взаимодействующих роботов представляют большой интерес для исследователей. Наша платформа является следующим шагом в этом направлении и дает преимущества пользователям позволяя им использовать готовые решения и уделять максимум сил и внимания для решения новых проблем в области их специализации.