Rosbot Plus - An intuitive testbed for autonomous navigation and exploration
Introduction
Autonomous navigation is an increasing area of interest for research in the robotics field. Applications are vast from fully autonomous driving to autonomous surveying of dangerous areas.
While simulations are perfect for proof of concepts and testing of algorithms, performance often does not translate accurately to field robotics. This suggests the need for an accessible testbed to facilitate further research into more efficient navigation and exploration algorithms. Roboworks offers various robots that serve as an accurate testbed for autonomous navigation and exploration.
Rosbot Plus Features
The Rosbot Plus is an ideal platform for the research of autonomous navigation and exploration. The robot is built on a robust Ackermann chassis which mimics the steering and driving capabilities of a typical road vehicle.
The four-wheel suspension system allows it to be deployed outdoors, with a payload of up to 45kg. Combined with many mounting options on the chassis, the Rosbot Plus is also suitable for testing the integration of various attachments, manipulators, and devices.
The Rosbot Plus comes in various configurations to suit your individual computing needs. Microprocessors readily available are:
- Raspberry Pi
- Jetson Nano
- Jetson TX
- Xavier NX
It can also be easily controlled through a Bluetooth app or wireless remote control. ROS Development is also simple by connecting to the included WiFi module.
SLAM
SLAM (Simultaneous Localization and Mapping) algorithms allow robots to precisely determine its position within its environment. Localization refers to the robot's local position on a global map, while simultaneously improving the features of the map based on data collected about the environment.
The Rosbot Plus uses a high-resolution RPLidar to detect obstacles and objects that would obstruct its movement, as well as integrated motor feedback for odometry data. Coming in a ROS2-ready setup, the ROSBOT Plus is also configured for numerous SLAM packages, including GMapping, Cartographer and SLAM Toolbox.
Navigation
Robots use the aforementioned map as a method to physically move to a waypoint, which we call Navigation. Navigation algorithms are in charge of planning paths from the robot's current pose to a goal pose while avoiding obstacles in the map and dynamic obstacles.
Most navigation packages use a global and local planner, with the global planner drawing the shortest path to the target that the robot attempts to follow. The local planner will take into account the robot's immediate surroundings as it follows the path, and adjusts if it is unable to follow the path.
Our advantage here is being able to replicate the movement of an Ackermann chassis, which has vastly different requirements from differential or omnidirectional robots. The planner has to take into account the turning radius, steering angle, and other variables, similar to navigating an Autonomous Road Vehicle.
Autonomous Exploration
Traditionally, robots explore its surroundings being controlled by a human. Autonomous exploration is an aspect of Robotic Software Architecture that allows a robot to autonomously create a map of its environment without any human assistance.
By determining areas of the map that are yet to be discovered, the robot will attempt to navigate to the area until the map is closed off.
With a powerful onboard computer, the Rosbot Plus can minimize the computational time required to generate the paths to these undiscovered areas.
Progress and current work
Research has been conducted to determine which navigation and exploration algorithms are the most suitable for the Rosbot Plus.
Work is currently being done to ensure the software packages in the robot are not only easy to use but also educational to beginner-level developers.
Once fully implemented, the Rosbot Plus will be deployed as a service robot fitted with a refrigeration device, helping farmers keep produced chilled while following them across the orchard.