The release of OpenBot 0.5 has been published, developing the platform for creating mobile wheeled robots, which are based on an ordinary Android smartphone. The platform was created in the research division of Intel and promotes the idea of utilizing the computational capabilities of a smartphone along with its built-in GPS, gyroscope, compass, and camera.
The software for controlling the robot, analyzing the surrounding environment, and autonomous navigation is implemented as an application for the Android platform. The code is written in Java, Kotlin, and C++ and is distributed under the MIT license. The platform is expected to be useful for learning robotics, quickly creating individual prototypes of mobile robots, and conducting research related to autopilots and autonomous navigation.
OpenBot allows users to start experimenting with mobile robots at minimal costs — creating a robot can be achieved with a mid-range smartphone and additional components totaling about $50. The chassis for the robot, as well as accompanying parts for mounting the smartphone, are printed on a 3D printer based on provided designs (if a 3D printer is not available, a frame can be cut out of cardboard or plywood). Movement is powered by four electric motors.


To control the motors, auxiliary equipment, and additional sensors, as well as to monitor battery charges, an Arduino Nano board based on the ATmega328P microcontroller is used, which connects to the smartphone via a USB port. Additionally, support for connecting speed sensors and ultrasonic sonar is provided. Remote control of the robot can be performed through a client application for Android, from a computer on the same WiFi network, through a web browser or via a game controller with Bluetooth support (e.g., PS4, XBox, and X3).

The mobile software includes a machine learning system for object recognition (capable of identifying about 80 types of objects) and executing autopilot functions. The application allows the robot to identify target objects, navigate around obstacles, follow a selected object, and solve tasks related to autonomous navigation. For instance, the robot can move to a specified location in autopilot mode while adapting to environmental changes. Motion can also be controlled manually, using the robot as a remote-controlled moving camera.

The new version features a significantly revamped firmware for Arduino, which now supports additional types of robots (RTR and RC). The Android application has added support for a new messaging protocol with the microcontroller firmware, enabled the handling of configuration messages, and reworked the support for control via game controllers. Models for printing a new RC-Truck chassis on a 3D printer have been added.

A button has been added to the client application to switch the robot's camera, and support for the RTSP protocol has been discontinued in favor of WebRTC. The Node.js-based web interface now allows for remote control of the robot's movement through the browser while streaming data from the robot's camera using WebRTC.



Source: opennet.ru
