Title: Mindstorms NXT : prsentation gnrale
1Mindstorms NXT présentation générale
- Matthieu Martel
- matthieu.martel_at_univ-perp.fr
2LEGO Mindstorms NXT
3Robots standard
Tribot
Alpha Rex
Spike
RoboArm
4Architecture générale
Servomoteurs
Calculateur NXT
Capteur contact
Capteur ultrason
Capteur sonore
Capteur luminosité
5Le calculateur NXT
- Processeur 32 bits ARM7
- Mémoire flash 256 KO (persistant)
- Mémoire RAM 64 KO (non-persistant)
- 4 ports dentrée (capteurs)
- 3 ports de sortie (servomoteurs)
- Communications Bluetooth
- Port USB
- Ecran LCD 100x64 pixels
- Haut-parleur
- Boutons (ON, Flèches, Clear)
6Les capteurs
Contact
Son
Luminosité
Ultrason
Détecte lorsque lon le presse et lorsque lon le
relache
Détecte la distance à un objet (jusquà 2,5 m)
Détecte le niveau sonore (dB)
Détecte lintensité lumineuse
7Les servomoteurs
- Moteurs munis de capteurs de rotation
- Permet, par exemple, la synchronisation de 2
moteurs reliés à 2 roues différentes pour avancer
droit
8Programmation
- Langage NBC (NXT ByteCode) proche de
lassembleur - Instructions simples pour la gestion des ports
dentrée et de sortie - Multi-thread, accès mémoire simplifiés
- Il existe dautres langages
include "NXTDefs.h" thread main
OnFwd(OUT_B,100) // allumer moteur port
B OnFwd(OUT_C,100) // allumer moteur port
C wait 4000 // attendre 4
secondes OnRev(OUT_BC,100) // inverser
sens moteurs wait 4000 //
attendre 4 secondes Off(OUT_BC)
// éteindre moteurs exit endt
Exemple de programme NBC pour Tribot
9Développement dapplications
compilation
programme NBC
programme exécutable
téléchargement (usb,bluetooth)
- Programme NBC développé sur ordinateur
- Compilation transformation du programme NBC en
programme directement compréhensible par le robot
(programme exécutable en langage machine) - Langage machine instructions binaires
compréhensible par le processeur - Téléchargement du programme compilé dans le
calculateur via le port USB ou par communication
Bluetooth
10Compilation et téléchargement
nbc test.nbc -Otest.rxe
test.nbc
test.rxe
nxtcom test.rxe
- Compilation par la commande nbc
- nbc test.nbc -Otest.rxe
- Remarque lextension .rxe est obligatoire
- Aide nbc -help
- Téléchargement via le port USB
- nxtcom test.rxe
11Applications
- détection et capture dobjets
- atteindre une source lumineuse en évitant les
obstacles - suivre un chemin tracé au sol par exemple
- reconnaitre un environnement (carte des lieux)
- etc...
12(No Transcript)
13Sumo Mindstorms
Le sumo Mindstorms est un combat où 2 robots
essaient de se pousser mutuellement hors dun
ring carre. Le premier robot qui touche le sol en
dehors du ring perd le combat. Le robot restant
dans le ring est déclaré vainqueur.Règles 1. Les
robots autonomes doivent agir sans aucun contrôle
humain pendant le match. 2. Poids Les robots
doivent peser 1.5kg ou moins.3. Taille Au début
du match, le robot doit tenir dans un carré de 16
cm de côté, sans limitation de hauteur. Des
parties du robot peuvent sétendre hors de cette
zone une fois le match commencé.4. Ring de sumo
Le ring de sumo est un carre (attention aux
coins) de 75 cm de coté et a une hauteur de 5 cm
par rapport au sol. La couleur du ring est noire,
avec un bord blanc de 5 cm de largeur.5. Objets
et actions interdits Un robot ne peut jeter
aucun matériel sur le ring ou sur son adversaire,
ni déformer le ring daucune manière. Les robots
ne peuvent pas utiliser de parties amovibles ou
de projectiles. Les robots ne peuvent pas générer
dinterférences électromagnétiques capables de
géner lautre robot ou ses capteurs. Générer un
environnement qui trompe le robot adverse ou ses
capteurs est autorisé (par exemple, mettre une
plaque noire sur la limite blanche du ring en
espérant que le robot adverse ne détectera pas le
bord et tombera). 6. Objets et actions
autorisés Un robot peut utiliser diverses
formes de détection pour localiser ladversaire
(infra- rouge, sonar, toucher...). Il peut aussi
utiliser des technologies de dissimulation pour
éviter dêtre détecté par ladversaire. Des
signaux peuvent être envoyés pour essayer de
tromper les détecteurs de ladversaire, comme
flooder la zone avec des infra-rouges, toucher
lextrémité du robot, ou convaincre ladversaire
quil est au bord du ring. Tout tentative pour
endommager ladversaire, autre que le pousser et
le tirer, est interdite. Pas de lames rotatives
ou de lance-flammes, merci !Organisation des
matchs1. Les combats sont organisés par
championnat. Chaque Sumo affronte tour à tour les
autres Sumo. Un classement est établi en
attribuant 2 points pour chaque victoire, 1 point
pour un match nul et 0 point pour une défaite.2.
Durée dun affrontement Chaque combat dure 3
minutes au maximum. Si au bout des 3 minutes, les
2 robots sont toujours sur le ring,le combat est
arrêté et le match est déclaré nul.3. Début du
match Un arbitre siffle le début de chaque
match. Les opérateurs indiquent à leur robot le
début du match. Chaque robot doit observer un
délai de 5 secondes après que lopérateur lait
déclenché avant de commencer à se deplacer.
14Quelques liens
- Site officiel http//mindstorms.lego.com
- LEGO education http//www.legoeducation.info/nxt
/ - Langage NBC http//bricxcc.sourceforge.net/nbc/
- Pièces détachées http//www.peeron.com/