Kilobots : Comment contrôler simultanément un millier de robots dans un essaim ?
Le Kilobot a été développé par la prestigieuse université de Harvard et il est maintenant produit et distribué par K-Team.
Ils ont été conçus pour être un système à faible coût dans la recherche des comportements robotiques collectifs à grande échelle.
Le Kilobot possède un émetteur et un récepteur infrarouge lui permettant d’émettre et de recevoir des messages dans toutes les directions. Cela lui donne un avantage pour communiquer et mesurer sa proximité avec ses voisins Kilobots.
Pour l’instant, les Kilobots sont des tests exceptionnels pour les algorithmes d’intelligence artificielle collective, tels la synchronisation et la localisation. Ces robots obéissent à la forme finale demandée par les chercheurs et suivent un algorithme pour créer une forme 2D sans aucune intervention humaine. Le but à long terme est de parvenir à ce que de tels essaims artificiels puissent déterminer leur propre stratégie pour parvenir à un objectif commun.
Spécifications techniques du robot Kilobot
- Processeur : ATmega 328 (8bit @ 8MHz)
- Mémoire : 32 KO Flash utilisé à la fois pour les programmes utilisateurs et le bootloader, 1KO EEPROM pour le stockage des valeurs de calibration et autre données non volatiles et 2KO SRAM
- Batterie : Rechargeable Li-Ion 3.7V, pour 3 mois d’autonomie en mode veille. Chaque robot Kilobot a un chargeur embarqué permettant la recharge de la batterie lorsque une tension de +6 volts à n’importe laquelle de ses jambes, et que la masse soit reliée à la plaque de rechargement.
- Chargement : Un chargeur pour les robots Kilobot est proposé en option
- Communication : Les robots Kilobot peuvent communiquer avec leurs voisins jusqu’à une distance de 7 cm via la réflexion de lumière infrarouge sur le sol.
- Capteurs : Lors de la réception d’un message, la distance au Kilobot à l’origine de la transmission peut être déterminée par la force du signal. La luminosité ambiante peut être détectée par le Kilobot.
- Mouvement : Chaque Kilobot a 2 moteurs à vibrations, chacun étant contrôlable indépendamment permettant de faire de la conduite différentielle sur robot. Chaque moteur peut être configuré pour prendre l’une des 255 valeurs de puissance disponibles.
- Lumière : Chaque robot Kilobot dispose d’une LED RGB dirigée vers le haut et chaque couleur de la led (rouge, vert, bleu) a 3 niveaux de luminosité.
- Dimensions : Le diamètre du robot Kilobot est de 33 mm et sa hauteur de 34mm (incluant les jambes)
- Logiciel : Le logiciel Kilobot Controller permet de contrôler les robots et de leur envoyer des programmes.
- Programmation :Pour la programmation, le logiciel de développement open source WinAVR combiné au logiciel AvrStudio de Amtel proposent un environnement de programmation en C. Une API proposant des fonctionnalités basiques telles que la gestion de la vitesse des moteurs, le contrôle des led, la mesure de la distance,… est fournie et des exemples de code sont également proposés.
- Debug : Une sortie série est disponible sur chaque moteur pour débbogage.
Manuel (PDF)
pour en savoir plus : Kilobot: A Low Cost Scalable Robot System for Collective Behaviors
Michael Rubenstein, Christian Ahler, Radhika Nagpal
IEEE Intl. Conf on Robotics and Automation (ICRA), 2012.