La programmation Java via LeJOS est tout à fait accessible, et peut-être même plus que celle en C par exemple, car un des grands intérêts de cet environnement est de proposer des abstractions de haut niveau des différentes fonctions.
Par exemple, pour piloter un robot de type différentiel (ie "char") tel que celui qu’on peut construire avec le kit NXT, les classes disponibles fournissent des méthodes correspondant aux différents ordres qu’on est amené à donner : avancer de telle distance, tourner de tel angle,... Le code de la bibliothèque se charge de calculer à partir de ces ordres les consignes correspondantes pour les moteurs, en tenant compte des caractéristiques dimensionnelles du robot (diamètre des roues et distance entre les roues) fournies lors se son initialisation. Un exemple illustrant cela est fourni dans la documentation de la classe correspondante :
http://lejos.sourceforge.net/nxt/nx...
D’autres types d’architecture mécaniques sont également supportés par les pilotes correspondants :
– robot à roues directionnelles (ie véhicule classique)
– robot holonome
Dans chaque cas, les classes fournies visent à prendre à charge la complexité du contrôle fin des actionneurs, et permettent ainsi de ne se préoccuper que de la logique de haut niveau.
Cela peut aller encore plus loin, car des classes sont également fournies pour gérer la navigation par waypoints par exemple et se chargent de calculer et de donner les ordres de pilotage en fonction des directives de navigation.
Et ce n’est qu’une toute petite partie des capacités de LeJOS, car il traite également les communications Bluetooth, le contrôle à distance, le contrôle de servos moteurs de type R/C, ainsi que des architectures de contrôles sophistiquées telles que la subsomption (Rodney Brooks - http://en.wikipedia.org/wiki/Subsum...)
Les autres environnements (NXC, RobotC, IDE graphique Mindstorms) ne fournissent que la couche d’accès de bas niveau aux capteurs et actionneurs et obligent donc à tout gérer soi-même.
Liens utiles
Outre la documentation de référence dont j’ai utilisé quelques pointeurs précédemment, une très bonne source d’information est le eBook écrit par les concepteurs de LeJOS et disponible gratuitement ici : http://www.juanantonio.info/lejos-ebook/
Les documentations sont quasiment toutes en anglais, mais cela ne devrait pas poser trop de problèmes car c’est de l’anglais technique et non pas littéraire. De plus, cela peut être un très bon exercice dans un contexte scolaire pour les élèves en liaison avec leur professeur d’anglais. Un bon cadre d’application pour la transversalité entre matières.