Публикувана е версия 0.5 на проекта OpenBot, който развива платформа за създаване на движащи се роботизирани устройства, основаващи се на обикновен смартфон с Android. Платформата е създадена в изследователското подразделение на компанията Intel и развива идеята за използване на изчислителните възможности на смартфона, както и вградени GPS, жироскоп, компас и камера.
Софтверът за управление на робота, анализ на околната среда и автономна навигация е реализиран под формата на приложение за Android. Кодът е написан на Java, Kotlin и C++ и се разпространява под лиценз MIT. Предполага се, че платформата може да бъде полезна за обучение по роботика, бързо създаване на прототипи на движещи се роботи и провеждане на изследвания, свързани с автопилоти и автономна навигация.
OpenBot позволява да се започнат експерименти с движащи се роботи с минимални разходи — за създаването на робот е достатъчен смартфон в средния ценови клас и допълнителни компоненти на стойност около 50 долара. Шасито на робота и съответните детайли за закрепване на смартфона се печатат на 3D-принтер по предложените макети (ако нямате 3D-принтер, можете да изрежете рамка от картон или шперплат). Четири електродвигателя осигуряват движението.


За управление на двигателите, допълнителното оборудване и сензорите, както и следене на заряда на батериите, се използва платка Arduino Nano с микроконтролер ATmega328P, която се свързва към смартфона през USB порт. Освен това се поддържа свързване на сензори за скорост и ултразвукови сонари. Отдалеченото управление на робота може да се осъществи чрез клиентското приложение за Android, чрез компютър в същата WiFi мрежа, през уеб браузър или чрез игрови контролер с поддръжка на Bluetooth (например, PS4, XBox и X3).

Приложеният на смартфона управляващ софтуер включва система за машинно обучение за разпознаване на обекти (определят се около 80 типа обекти) и изпълнение на функции за автопилот. Приложението позволява на робота да идентифицира желаните обекти, да избягва препятствия, да следва избрания обект и да решава задачи за автономна навигация. Например, роботът може в режим на автопилот да се премести в зададено място, адаптирайки се към променящата се среда. Движението може да се управлява и в ръчен режим, използвайки робота като движеща се камера с дистанционно управление.

В новата версия е значително преработен фърмуерът за Arduino, в който е добавена поддръжка на допълнителни типове роботи (RTR и RC). В приложението за Android е добавена поддръжка на нов протокол за обмен на съобщения с фърмуера на микроконтролера, реализирана е възможност за обработка на конфигурационни съобщения и преработена е поддръжката за управление с игрови контролери. Добавени са модели за печат на ново шаси RC-Truck на 3D-принтер.

В клиентското приложение е добавен бутон за превключване на камерата на робота и е спряна поддръжката на протокола RTSP в полза на WebRTC. В уеб интерфейса, базиран на Node.js, е предоставена възможност за дистанционно управление на движението на робота през браузъра с транслация на данни от видеокамерата на робота с помощта на WebRTC.



Източник: opennet.ru
