Опубликована платформа для создания роботов OpenBot 0.8

После почти двух лет разработки состоялся релиз открытой платформы OpenBot 0.8, предназначенной для создания движущихся колёсных роботов, основой которых выступает обычный смартфон на базе Android. Платформа создана в исследовательском подразделении компании Intel и развивает идею задействования при создании роботов вычислительных возможностей смартфона и встроенных в смартфон GPS, гироскопа, компаса и камеры. Код, написанный на Swift и Java, распространяется под лицензией MIT.

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

OpenBot позволяет с минимальными затратами начать эксперименты с движущимися роботами – для создания робота можно обойтись смартфоном среднего ценового диапазона и дополнительными компонентами общей стоимостью примерно 50 долларов. Шасси для робота, а также сопутствующие детали для крепления смартфона, печатаются на 3D-принтере по предлагаемым макетам. Если нет 3D-принтера, то можно вырезать каркас из картона или фанеры. Движение обеспечивают четыре электродвигателя.


Для управления двигателями, навесным оборудованием и дополнительными датчиками, а также для отслеживания заряда аккумуляторов, применяется плата Arduino Nano на базе микроконтроллера ATmega328P, которая подключается к смартфону через USB-порт. Дополнительно поддерживается подключение датчиков скорости и
ультразвукового сонара. Удалённое управление роботом может осуществляться через клиентское приложение для Android, через компьютер, находящийся в той же WiFi-сети, через web-браузер или через игровой контроллер c поддержкой Bluetooth (например, PS4, XBox и X3).


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

В новой версии:

  • Реализовано web-приложение OpenBot Playground, позволяющее создавать программы для выполнения действий роботами. Программы определяются в виде блок-схемы. Передача программы на используемый в роботе смартфон производится через сканирование QR-кода.

  • Для Android и iOS реализовано мобильное приложение Flutter Controller для дистанционного управления роботом, способное транслировать снимаемое роботом видео и передавать звук. Приложение написано с использованием фреймворка Flutter и использует WebRTC для передачи мультимедийных потоков.

  • Добавлен запускаемый на стороне робота web-сервер для удалённого управления.
  • Функции отслеживания объектов адаптированы к возможности использования фронтальной камеры на смартфоне.
  • Добавлена поддержка соединения смартфона на роботе и смартфона, используемого для дистанционного управления, через собственную сеть Wi-Fi (на одном из смартфонов запускается точка доступа, а второй смартфон подключается к ней).
  • Представлена открытая облачная система OpenBot-Fleet, предназначенная для совместного построения карт окружающего пространства и навигации с использованием централизованной БД. Суть проекта в возможности запуска нескольких роботов, собирающих и загружающих в облако информацию (например, для совместного сканирования определённой области или поиска объекта). В облаке эта информация анализируется и выбирается оптимальная стратегия навигации для каждого из роботов, учитывающая состояние и информацию от других роботов.







Release. Ссылка here.