Cà, c'est moi et je viens de terminer une partie de mon travail…
Alors je me repose un instant sur une ébauche de modèle.

Il y a beaucoup de personnes, heureuses propriétaires du kit # 8527, qui souhaitent apprendre à mieux programmer le LEGO® Mindstorms® NXT.
Je vais donc essayer de vous en dire plus sur le sujet.
Mais tout d'abord, quelques petites règles de fonctionnement:
Moi, c'est Roboleo, mais j'accepte LEO. Mon smily pour ce travail c'est

Je ne suis pas un programmeur gourou, mais j'aime bien que mes programmes collent parfaitement avec mes MOC's. Certains sont élégants, d'autres affreux, mais tous fonctionnent correctement. Ils fonctionnent parce que j'ai consacré le temps nécessaire à l'apprentissage des outils mis à disposition dans le logiciel du NXT.
Première règle: familiarisez-vous avec les outils de programmation.
Et pour cela je vous propose des "leçons" qui s'adressent d'abord aux débutants.
1 - Mais avant de commencer, précisons quelques évidences:
> Vous avez acquis ou disposez d'un kit #8527.
> Vous êtes sensés savoir vous servir d'un ordinateur. Naviguer sur le Net ne suffit pas.
> Vous devez être en mesure de lancer un logiciel, et de procéder à toutes opérations d'enregistrement, sauvegarde, etc…
> Vous avez installé le logiciel Mindstorms NXT sur votre ordinateur
> Votre NXT est équipé de son microprogramme et il est prêt à fonctionner.
(Voir le topic http://www.techlug.fr/Forum/viewtopic.php?t=1256 si nécessaire)
2 - Pour tester les programmes que nous allons élaborer, il nous faudra un robot de travail. Nous l'appellerons BONG et son smily est

Confectionné le plus simplement possible, il comportera le NXT monté sur 2 roues motrices actionnées chacune par un servomoteur, + une roue "folle". Il sera équipé du capteur à ultrasons. Un exemple (sans capteur) avec vidéo et notice de montage est accessible ICI:
http://www.nxtprograms.com/five_minute_bot/index.html
LEO


La première leçon commence ici:
Quelques définitions:
Un ROBOT: c'est un appareil construit pour accomplir des actions d'une manière indépendante et qui réagit avec son environnement.
UN PROGRAMME: Pour l'instant, BONG exécute ce qu'il fait le mieux, c'est-à-dire RIEN.
Pour le faire agir, LEO

définition: un programme est une suite d'instructions. Programmer, c'est ce que fait LEO quand il crée un programme.
Cela paraît simple, vous verrez cependant qu'il n'en est rien…
Exemple:
LEO

(BONG

LEO

(BONG s'arrête)
LEO vient de donner à BONG deux programmes très simples à exécuter. Et oui, 2 programmes!
Le premier est "déplacer en avant", le 2ème "stop". Ils ne comportent chacun qu'une seule instruction.
Est-il possible de réunir ces 2 instructions en un seul programme?
LEO

(BONG ne réagit pas…)
Que se passe-i-il? Manque de précision. Plus exactement les choses se sont déroulées tellement vite que LEO n'a rien vu. Le moteur n'a même pas eu le temps de démarrer que déjà le STOP est intervenu. BONG a fait exactement ce que LEO lui a demandé.
Dans le premier cas LEO

Dans le 2 ème cas, LEO

Essayons autrement.
LEO

(BONG se déplace en avant pendant 5 secondes, puis s'arrête).
OK, possible que BONG ne soit pas le problème. Cela signifie que BONG n'a aucun talent de devin et qu'il faut être très précis avec lui.
Voyons maintenant les choses différemment. Au lieu de lui dire comment agir, prenons une feuille de papier et écrivons:
BONG, avance de 90 cm; tourne à gauche de 90°; recule de 60 cm; fait un tour de 360° sur toi-même, et stop.
LEO

Devinez la suite?… BONG

Si votre Robot NXT est comme le mien, alors il est incapable d' entendre des ordres vocaux ou lire une feuille de papier.
Comment dans ces conditions lui transmettre les instructions?
Facile, vous allez utiliser le logiciel de programmation NXT, celui fourni dans le kit #8527 appelé NXT-G (G pour "graphique" signifiant que les suites d'instructions ne sont pas écrites comme il a été dit précédemment, mais représentées par des vignettes ou mieux, par des icônes).
NXT-G est l'outil de programmation que vous emploierez pour donner vie à vos robots. Il vous permet de créer vos programmes qui seront téléchargés (installés) sur votre robot. Ces programmes peuvent-être de simples instructions comme "avancer de 60 cm et stop" ou bien plus sophistiquées.
Les robots NXT peuvent combiner une grande variété de moteurs et de capteurs mais, sans un bon programme, il n'accomplira pas ce que vous attendez de lui. Vous n'aurez entre vos mains qu' un objet dans la confusion.
Lancez maintenant le logiciel NXT-G.
Cette fenêtre s'affiche… et c'est par là que vous commencerez à programmer.

Commencez par lire la MISE en ROUTE; elle vous donnera quelques notions de base sur l'utilisation du NXT-G. Elle nous seront utiles pour la suite.
(Remerciements à James Floyd Kelly pour son livre "LEGO MINDSTORMS NXT-G Programming Guide" qui m'a beaucoup inspiré…)