SwarmBot – Projet d’essaim(s) de Robots

Avec quelques étudiants du Centre de Recherche Interdisciplinaire  je cherche un moyen de pousser plus loin ma connaissance de la robotique, et des LEGO Mindstorms, hors du champ de la FLL et du coaching de l’équipe de l’IND, qui continue cette année scolaire, avec des enfants de 5, 4 et 3ème.

L’idée, c’est d’utiliser des robots en essaim (SWARM) pour simuler les comportements que nous aurons modélisé, et “donner à voir” ce que nous aurons réussi à programmer.

IMG_20151209_224316

La base du robot est un GRIPP3R, qui permet d’avoir deux chenilles et une pince frontale, pour prendre des objets. La partie haute du robot a été modifiée, car plus décorative qu’utile. Vous trouverez la notice de montage sur le site LEGO. J’utilise LEJOS, une machine virtuelle JAVA implémentée au dessus du micrologiciel LEGO. Cela permet d’instancier directement les primitives au travers de la librairie fournie par les développeurs LEJOS. Je suis tombé sur une vieille librairie JAVA avec Réseaux de Neurones, Subsomption, Logique Floue, Apprentissage Supervisé et Vision. Ça s’appelle PYRO, n’est plus maintenu depuis 2007, mais il y a beaucoup de choses réutilisables. Couplé avec la librairie PeerBase, le dongle WIFI de l’EV3 fournit un réseau interne qui supporte un partage de fichiers de type pair à pair, ce qui permet d’imaginer des options pour élaborer des comportements très intéressants.

IMG_20151113_122009

LEJOS permet d’utiliser les NXT comme des individus à rajouter au Swarm. On pourra utiliser la fonctionnalité réseau Bluetooth PAN pour les faire communiquer. Vous voyez ici 5 des 6 plateformes NXT, les 3 EV3 Gripp3r (Black, Red, Grey), et le robot SUMO que je développe pour mes cours de robotique.

IMG_20151209_224303

J’ai mis au clair mes idées avec une carte mentale, sur l’idée sortie lors des premières sessions, d’un swarm de moutons, et un autre swarm de loups, et de leurs possibles interactions de prédation.

SWARMBOT

Je laisse le code maturer un peu, avant de le diffuser. J’ai de la documentation à faire, des crédits à rajouter, des renommages et du nettoyage. C’est une bonne occasion pour moi d’apprendre le JAVA. Plus de nouvelles, et la première version du code bientôt!!!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s