Je devais avoir 4 ans lorsque j'ai eu mes 1ère briques Legos, et l'une de ma 1ère construction fut une maisonette. Les briques étaient classiques, ce sont les plus connues, celles que tout le monde a manipulé.
Quelques années après, j'ai découvert les Legos dit "technique". Les pièces ne sont plus vraiment le même style de "brique", les concepts différents : on trouve des trous dans ses fameuses briques, des axes, des fixations : un bon début pour des constructions plus complexes. Typiquement des véhicules.
Puis un certain nombre d'année après, nouvelle découverte.
C'est sur le stand de Xebia à Devoxx France que j'ai découvert Lego Mindstorm NXT 2.O : des pièces peu plus évolué que les legos techniques que je connaissais, et surtout de l'électronique : des capteurs et un boitier central. Bref tout ce qu'il faut pour construire des robots. De quoi accomplir de vieux rêves !
On peut le trouver dans certains magasin de jouets comme Toys R us ou encore sur amazon pour une fourchette de prix entre 240€ et 300€ (des vrais jouets de grands).
Parmis les pièces, il y a donc ces composants : 3 moteurs, 2 capteurs de pressions, 1 capteur ultrason (détection obstacle) et un capteur de couleur.
Il est aussi possible de trouver d'autres capteurs sur le site officiel, comme un capteur sonore, un gyroscope, ...
En plus ces pièces, on trouve aussi un cd avec le sdk, et aussi un piste d'expérimentation. Elle sert par exemple à s'amuser avec le capteur de couleurs
La prise en main est assez simple, en suivant le guide, on monte en moins 30 minutes un 1er modèle :
Le kit de développement fourni est assez basique. On programme à l'aide d'actions que l'on enchaine, tout ça en mode drag & drop. Assez simple certes, mais il ne faut pas perdre de vu que c'est fait pour être accessible à partir de 10 ans. Cette approche reste néanmoins très bonne, pour des non-développeurs afin de se familiariser avec des concepts de boucles et de conditions. Assez intéressant dans une approche d'apprentissage type Programatoo, le frein serait donc le prix. Et pour les développeurs, qu'en est-il ? En réalité, ce qui vraiment intéressé dans ces Legos, c'est le projet LeJOS qui lui est lié.
Mais qu'est ce donc que ça ?
C'est tout simplement, un OS open source alternatif pour Lego Mindstorm NXT. Il contient une VM et est donc capable, d'exécuter des programmes écrit en java. Nous y voilà !
LeJOS est assez simple à installer : après avoir installé le dernier driver, il n'y a qu'à brancher en usb et de lancer l'installation. Quelques minutes après :
Eclipse dispose d'un plugin plutôt intéressant qui permet de créer un projet LeJOS mais aussi et surtout de déployer par un simple "Run-As", très agréable en bluetooth.
C'est ainsi que dans le monde LeJOS, bonjour se dira :
public class HelloWorld { public static void main (String[] args) { System.out.println("Bonjour"); Motor.B.forward(); Motor.C.forward(); Button.waitForAnyPress(); } }Ce petit robot affichera "Bonjour" sur l'écran LCD et foncera en avant jusqu'à ce qu'un des boutons du boitier soit pressé.
Pour bien commencer, je me suis acheté cet ouvrage écrit par un co-developer de LeJOS. On y trouve les premiers programmes (avec les dessins de montage) pour s'accoutumer à l'environnement, jusqu'à la construction d'un robot de type Segway qui utilise le capteur gyroscope (non inclus dans le coffret de base).
Je viens juste de le commencer, cette nouvelle aventure Lego ne fait que commencer pour moi. Au final, Lego Mindstorm ravira les petits et les grands, les développeurs et les non développeurs, la distraction sera toujours présente.