Voici un petit exercice accessible aux plus jeunes, mêlant robotique mobile, mathématiques élémentaires et programmation.
Le problème posé est le suivant :
Déterminer l’angle d’incidence d’un robot entrant dans une case d’un échiquier ou d’un damier. On fait tout d’abord l’hypothèse que le robot passe toujours d’une case à l’autre par le milieu d’un côté, jamais par un sommet.
Un exercice pratique qui peut s’avérer très utile dans le contexte de la Coupe Eurobot 2011 par exemple où les robots se déplacent justement sur un échiquier :)
Le matériel
On choisit d’utiliser un robot Lego Mindstorms, car il dispose de moteurs capables de donner des informations sur leur vitesse et leur position de manière suffisamment fiables.
Les cases du damiers seront détectées par des capteurs de lumière, comme pour un suivi de ligne. Pour une mécanique plus pratique, nous utilisons le capteur NXT Line Leader de chez Mindsensors.com :
– les deux capteurs seront parfaitement alignés
– il se connecte directement à la brique NXT du Mindstorms
– il est I2C donc utilisable sans Mindstorms
– on pourra utiliser les 6 autres capteurs plus tard
– on pourra le remplacer par l’équivalent Pololu sur un autre robot
Concernant la programmation, on a choisi de garder l’environnement graphique NXT-G pour que nos plus jeunes adhérents puissent être autonomes sur ce projet.
Principes mathématiques
Réalisation
Le projet n’est pas terminé. Nous publierons au fur et à mesure.
Voici déjà la détection d’égalité ou de différence de lumière sur les deux capteurs :
Cela permet de démarrer et d’arrêter un chrono pour connaitre le temps de franchissement :
Notez que le bloc de sous-routine "boucle d’attente" n’est pas le même avant et après : dans un cas on sort sur une différence de capteurs, dans l’autre c’est l’égalité qui permet de sortir de la boucle.
Pour aller plus loin
Grâce aux bons conseils de Roboleo (l’auteur des deux guides du NXT dont nous parlons régulièrement), nous allons pouvoir visualiser les courbes du capteur et les mettre en relation avec les courbes de vitesse. Pour cela, nous réaliserons un programme de "datalogging" tel que décrit dans son tutoriel.
Vos commentaires
# Le 11 novembre 2014 à 20:19, par Asriel En réponse à : Mesure d’angle d’incidence sur damier
Salut Julien,
Intéressant ton article nous avions avec mes fils pour leur TP de physique de terminale réalisé avec le NXT un parcours de labyrinthe. Le robot détectait les murs, suivait une ligne tracée au sol pour le guider en vue de retrouver la sortie. Nous avions utilisé un algorithme simple celui de la main droite pour sortir du labyrinthe, si j’avais eu ce capteur cela eut été moins fastidieux. :)
Gérard from Air-France
Répondre à ce message
# Le 23 novembre 2010 à 18:38, par roboleo En réponse à : Mesure d’angle d’incidence sur damier
Sympa cet exercice…
A toutes fins utiles jettez un coup d’œil ici
Je viens de mettre en ligne une leçon sur le datalogging. Elle pourrait vous donner quelques idées.
@+
Roboleo
# Le 23 novembre 2010 à 22:22, par Julien H. En réponse à : Mesure d’angle d’incidence sur damier
Merci Roboleo ! C’est une très bonne idée.
# Le 2 mars 2011 à 18:48, par roboleo En réponse à : Mesure d’angle d’incidence sur damier
Bonjour à tous,
Je vous informe de la première mise à jour du Guide de programmation NXT-G vers 2.0 qui passe à 125 pages.
Il est toujours disponible sur mon site gratuitement…
Cette mise-à-jour concerne 4 rubriques :
Assistant d’importation et d’exportation de blocs…
Un chapitre complet sur le "suiveur de ligne" (line following).
Commande à distance par appareils mobiles.
Un chapitre complet sur l’enregistrement des données.
A titre d’information, ce guide a été téléchargé plus de 3000 fois avant cette mise à jour.
Répondre à ce message