La figure ci-dessous présente l’environnement de développement NXT-G.
La programmation à l’aide de NXT-G est entièrement graphique. Vous n’avez pas besoin de connaître la programmation pour réaliser des programmes évolués à l’aide de cet environnement NXT-G. Vous ne réaliserez aucune ligne de code à proprement parlé à l’aide de cet environnement. Par défaut, la zone de travail présente uniquement un point de départ. A partir de ce point de départ, vous glissez et déposez l’une des blocs de la palette NXT-G. Les blocs NXT-G s’ajoutent les uns derrière les autres sur un axe que l’on appelle le rayon de séquence.
Les blocs NXT-G qui ne sont pas reliés à un axe de séquence ne sont pas pris en compte par le programme. Il est possible de faire en sorte que plusieurs séquences de programmes s’effectuent en parallèle. Pour ce faire, des rayons de séquence supplémentaires peuvent être créés à partir du point de départ comme le présente la figure suivante.
NXT-G est fourni avec 35 blocs. Il est possible de télécharger sur le web des blocs supplémentaires et également de constituer ses propres blocs. Lors de l’achat d’un capteur non standard (par exemple la webcam CMUCam), le capteur est fourni avec un CD contenant un bloc supplémentaire permettant de manipuler et d’interagir avec le capteur.
Nous pouvons classer les blocs en 7 grandes familles comme le fait l’aide de NXT-G.
A l’aide de cette liste, il est aisé de se rendre compte que la palette de programmes que l’on peut réaliser à l’aide de NXT-G est très large. Faisons un tour rapide (non exhaustif) des blocs NXT-G pour Mindstorms proposés.
Bloc
Bloc "Afficher"
Description
Ce bloc NXT-G permet d’afficher un texte sur l’écran LCD de la brique intelligente NXT
Ce bloc NXT-G permet de réaliser une boucle dans votre programme, vous permettant ainsi de réaliser un même ensemble d’actions plusieurs fois tant que certaines conditions ne sont pas remplies
Ce bloc NXT-G permet d’activer un servomoteur. Il est possible d’indiquer le sens, la vitesse et la durée de la rotation
Ce bloc NXT-G permet de jouer un son (un bip, une série de différentes intonations enregistrées ou un fichier son) depuis la brique intelligence NXT
Ce bloc NXT-G permet de créer des conditions dans votre programme et ainsi ne réaliser certaines actions que si des conditions spécifiques sont réunies.
Ce bloc NXT-G vous permet de déterminer le nombre et/ou l’angle de rotation effectué par un servomoteur.
Ce bloc NXT-G permet d’interagir avec le capteur à ultrasons (détecteur d'obstacle) et ainsi déterminer les obstacles et leur distance du robot.
Ce bloc NXT-G permet d’interagir avec le capteur photosensible et ainsi déterminer la quantité de lumière reçue par le capteur
Ce bloc NXT-G permet d’interagir avec le capteur sonore et ainsi déterminer l’intensité du son qui arrive sur ce capteur.
Ce bloc NXT-G permet d’interagir avec le capteur de contact et ainsi déterminer si le capteur a été pressé ou au contraire relâché.
Ce bloc NXT-G vous permet d’effectuer une comparaison logique dans votre programme.
Ce bloc NXT-G permet de réaliser des calculs élémentaires comme l’addition, la soustraction, la multiplication et la division.
Ce bloc NXT-G vous permet de traiter un message reçu par communication Bluetooth. Il existe également un bloc permettant d’envoyer des messages via Bluetooth. En utilisant la technologie de communication sans fil Bluetooth, votre robot peut communiquer avec votre PC ou d’autres robots Lego Mindstorms NXT
Ce bloc NXT-G permet de gérer un chronomètre
Ce bloc NXT-G, très utile, vous permet de créer et manipuler des variables dans votre programme.
Bloc "Boucle"
Bloc "Moteur"
Bloc "Son"
Bloc "Commutation"
Bloc "Capteur de rotation"
Bloc "Capteur sonar à ultrasons"
Bloc "Capteur photosensible"
Bloc "Capteur sonore"
Bloc "Capteur de contact"
Bloc "Comparaison"
Bloc "Maths"
Bloc "Réception de message Bluetooth"
Bloc "Timer"
Bloc "Variable"