Computational Constraints of Miniature Robots
Statistical analysis of computational constraints
When it comes to describing robots, many roboticists choose to focus on the size, types of actuators, or other physical capabilities. As most areas of robotics deploy robots with large memory and processing power, the question “how computational resources limit what a robot can do” is often overlooked. However, the capabilities of many miniature robots are limited by significantly less memory and processing power. At present, there is no systematic approach to comparing and quantifying the computational resources as a whole and their implications. This letter proposes computational indices that systematically quantify computational resources-individually and as a whole. Then, by comparing 31 state-of-the-art miniature robots, a computational classification ranging from non-computing to minimally constrained robots is introduced. Finally, the implications of computational constraints on robotic software are discussed.
Real-Time Operating Systems for constraint robots
Design, development, and analysis of a novel RTOS
My research resulted OpenSwarm, a lightweight easy-to-use open-source operating system. To my knowledge, it is the first operating system designed for and deployed on miniature robots. OpenSwarm operates directly on a robot's microcontroller, with a memory footprint of 1 kB RAM and 12 kB ROM. OpenSwarm enables concurrent processing through its hybrid kernel. This kernel natively supports preemptive and cooperative scheduling, making it suitable for both computationally intensive and swiftly responsive robotics tasks. OpenSwarm provides hardware abstractions to write platform-independent code.
In my research, I show how OpenSwarm can be used to solve an established problem in swarm robotics (i.e., clustering of dispersed objects). With the conducted experiments, it was shown OpenSwarm performs as good as a none-portable hardware-near implementation.
The primary goal of this research was to make severely-constrained robots more accessible, which might help such systems to be deployed in real-world applications.
Optical and Scalable Communication for high-density swarms
Design and analysis of a novel optical communication
Swarm robotics investigates groups of relatively simple robots that use decentralized control to achieve a common goal. While the robots of many swarm systems communicate via optical links, the underlying channels and their impact on swarm performance are poorly understood. This paper models the optical channel of a widely used robotic platform, the e-puck. It proposes SwarmCom, a mobile ad-hoc network for mobile robots. SwarmCom has a detector that, with the help of the channel model, was designed to adapt to the environment and nearby robots. Experiments with groups of up to 30 physical e-pucks show that (i) SwarmCom outperforms the state-of-the-art infra-red communication software—libIrcom—in range (up to 3 times further), bit error rate (between 50 and 63% lower), or throughput (up to 8 times higher) and that (ii) the maximum number of communication channels per robot is relatively low, which limits the load per robot even for high-density swarms. Using channel coding, the bit error rate can be further reduced at the expense of throughput. SwarmCom could have profound implications for swarm robotics, contributing to system understanding and reproducibility, while paving the way for novel applications.
Distributed Processing on Constrained Devices
A proof of concept applied to robotic swarm
In this work, I extended my operating system, OpenSwarm, to be a distributed operating system for severely constrained robots. With this work, I showed how swarms of robots can process data and algorithms that individual robots cannot. I showed that the robots performed mapping and path planning on a map that exceed the memory constraints of the individual robots.