Опубликован выпуск проекта OpenBot 0.5, развивающего платформу для создания движущихся колёсных роботов, основой которых выступает обычный смартфон на базе Android. Платформа создана в исследовательском подразделении компании Intel и развивает идею задействования при создании роботов вычислительных возможностей смартфона и встроенных в смартфон GPS, гироскопа, компаса и камеры.
Программное обеспечение для управления роботом, анализа окружающего пространства и автономной навигации реализовано в виде приложения для платформы Android. Код написан на Java, Kotlin и C++ и распространяется под лицензией MIT. Предполагается, что платформа может оказаться полезной для обучения робототехнике, быстрого создания собственных прототипов движущихся роботов и проведения исследований, связанных с автопилотами и автономной навигацией.
OpenBot позволяет с минимальными затратами начать эксперименты с движущимися роботами – для создания робота можно обойтись смартфоном среднего ценового диапазона и дополнительными компонентами общей стоимостью примерно 50 долларов. Шасси для робота, а также сопутствующие детали для крепления смартфона печатаются на 3D-принтере по предлагаемым макетам (если нет 3D-принтера, то можно вырезать каркас из картона или фанеры). Движение обеспечивают четыре электродвигателя.
Для управления двигателями, навесным оборудованием и дополнительными датчиками, а также для отслеживания заряда аккумуляторов, применяется плата Arduino Nano на базе микроконтроллера ATmega328P, которая подключается к смартфону через USB-порт. Дополнительно поддерживается подключение датчиков скорости и
ультразвукового сонара. Удалённое управление роботом осуществляется через клиентское приложение для Android, через компьютер, находящийся в той же WiFi-сети, через web-браузер или через игровой контроллер c поддержкой Bluetooth (например, PS4, XBox и X3).
Выполняемое на смартфоне управляющее ПО включает такие возможности, как систему машинного обучения для распознавания объектов (определяется около 80 типов объектов) и выполнения функций автопилота, позволяющую определять искомые объекты, объезжать препятствия, следовать за выбранным объектом и решать задачи автономной навигации. Например, робот может в режиме автопилоте переместится в указанное место, адаптируясь с изменению окружения, или движением можно управлять в ручном режиме, используя робота как движущуюся камеру.
В новой версии значительно переделана прошивка для Arduino, в которой появилась поддержка новых типов роботов (RTR и RC). В приложение для Android добавлена поддержка нового протокола обмена сообщениями с прошивкой микроконтроллера, реализована возможность обработки конфигурационных сообщений и переделана поддержка управления при помощи игровых контроллеров. Добавлены модели для печати на 3D-принтере нового шасси RC-Truck.
В клиентское приложение добавлена кнопка для переключения камеры на роботе и прекращена поддержка протокола RTSP в пользу WebRTC. В web-интерфейсе на базе Node.js предоставлена возможность дистанционного управления движением робота через браузер с трансляцией данных с видеокамеры робота при помощи WebRTC.