Robotique au Collège Lestonnac (33)

La robotique à Lestonnac

Option robotique au collège

L'an dernier est né un atelier robotique au collège Lestonnac. Cette année, l'atelier est devenu une option pour 16 élèves de 4e (7 filles et 9 garçons). Les conditions de travail sont excellentes : 1 robot NXT et 1 poste informatique pour 2 élèves, 2 séances d' 1 heure par semaine.

Voici, dans les grandes lignes, la progression de ce début d'année de robotique.
1e partie : mouvements et premiers défis - découvrir le kit (rangement et inventaire) - faire un premier montage simple (la « base conduite ») - prendre en main le logiciel - programmer les mouvements de base (avancer, reculer, tourner, pivoter, …) - relever les premiers défis - prendre conscience de la nécessité d'une méthode de travail pour programmer efficacement (initiation à la "pensée informatique")

2e partie : les capteurs

  • découvrir les capteurs
  • programmer avec des boucles conditionnelles (Si)
  • relever des défis plus complexes
  • faire les premiers défis collaboratifs

1e partie : mouvements et premiers défis

Tutoriels

Faire les tutoriels de Robot Éducateur 03 à 11 (préciser les titres des tutoriels)

Défi n°1 : slalom

Les cubes sont espacés de 40 cm. Mon objectif, dans ce premier défi, est de laisser toute liberté aux élèves pour les confronter à la difficulté de concevoir un programme efficace puis de le mettre au point sans réaliser un très grand nombre d'essais/erreurs. J'ai alors pu constater que : - aucun des 8 binômes n'a pris un vrai temps de réflexion en amont : pas de schéma ni d'algorithme, ils ont tous commencé par programmer. - la méthode par tâtonnement, avec un grand nombre d'essais/erreurs, est adoptée naturellement. Mais on voit vite qu'il manque une étape essentielle : l'analyse de l'erreur. Quand les élèves constatent que le robot ne fait pas ce qu'ils voulaient, ils s'empressent de modifier le programme sans vraiment analyser ce qui n'a pas fonctionné. - la mise au point du programme a demandé un très grand nombre d'essais, une bonne vingtaine pour chaque groupe !

Après 2 heures passées sur ce défi nous avons fait le bilan suivant :

  • La méthode par tâtonnement est longue, imprécise, peu efficace
  • Une méthode qui a fait ses preuves : 1 schéma + 1 algorithme + 1 programme
  • Il nous manque un outil pour programmer les mouvements avec précision (avancer de tant de cm, pivoter de tant de degrés). Tout le travail des séances suivantes à consister à élaborer cet outil.

Nous nous sommes alors lancé dans une campagne de mesures !

Mesures pour « avancer » :

Il fallait compléter ces tableaux
image006image008

Les premières observations sont clairement apparues :

  • l’avantage de programmer en nombre de rotations est que l’alimentation n’a pas d’influence sur la distance parcourue. Il n’y a donc qu’un seul paramètre à prendre en compte.
  • la programmation en nombre de rotations permet d’obtenir une situation de proportionnalité. Il est donc possible et simple de calculer combien de tour de roues programmer pour parcourir une certaine distance.

J’ai alors proposé 2 approches : une statistique, basée sur les mesures effectuées, l’autre théorique.

Pour l’approche statistique, voici le tableau avec les mesures retenues :

image010

Pour l’approche théorique, la situation est suffisamment bien connue d’élèves de 4e pour qu’ils puissent résoudre ce problème par eux-même. Connaissant la diamètre des roues (56 mm, c’est écrit dessus), ils arrivent à produire une formule pour calculer la distance parcourue (d) en fonction du nombre de tours de roue programmé (n) et réciproquement.

Ces formules ont été saisies dans un tableur :

image013

Nous avions alors notre outil pour programmer précisément des translations d’une distance donnée.

Mesures pour « pivoter » :

Là encore j’ai choisi de confronter les approches statistiques et théoriques.
Mais le cas du pivot est plus compliqué que celui de la translation :

  • les mesures sont moins précises car les 2 moteurs du robot ne sont pas parfaitement synchronisés et il est fréquent qu’une roue arrête de tourner avant l’autre, ce qui désaxe le robot (voir la vidéo)
  • il est plus difficile de mesurer des angles que des distances.

J’ai donc imprimé en format A3 des images de rapporteurs de 360° agrandies au maximum. Ces feuilles scotchées sur les tables ont permis de réaliser les mesures suivantes :
image015

Quelques remarques :

  • les élèves sont surpris de la fluctuation des mesures obtenues par les différents groupes et des écarts avec les valeurs théoriques (dans l’image ci-dessus, ces valeurs sont calculées avec un empattement de 11 cm).
  • pour eux, un écart important est due à une mauvaise manipulation de leur part. Ils ne critiquent pas spontanément la méthode ni les instruments de mesure.

Pour l’approche théorique, j’ai décidé d’expliquer le principe et de donner les formules. Cette situation fera l’objet d’une situation-problème pour le cours de maths avec ma classe de 4e.

image017

Retour au défi 1 :

Les groupes se penchent à nouveau sur le défi 1 avec :

  • un schéma<
  • un algorithme
  • le tableur

image019

ALGORITHME
1. Avancer de 20 cm
2.
Pivoter de 45 ° à droite
3. Avancer de 28,5 cm
4.
Pivoter de 90° à gauche
5. Avancer de 57 cm
6. Pivoter de 90° à droite
7. Avancer de 57 cm
8. Pivoter de 90° à gauche
9. Avancer de 28,5 cm
10. Pivoter de 45° à droite

Cette fois-ci, en moins d’une heure tous les groupes relevaient le défi !

Des exemples de réussites (cliquer pour voir le film)

Les défis n°2 et 3 ont permis de réinvestir tout ce travail de façon ludique.

Défi n°2 : suivre un parcours

Une nouveauté est introduite ici : l'obligation d'écrire un algorithme et de le faire valider avant de programmer.

Il a tout de même fallu quelques tentatives et mises au point avant que tous les groupes ne relèvent le défi : l'occasion d'expérimenter le décalage entre théorie et pratique.

Ici, le manque de précision est apparu clairement à tous : le même robot avec le même programme ne suivra pas deux fois exactement la même trajectoire !
Voici l’explication que j’ai donnée aux élèves : nous n’avons pas des robots à 2 millions d’euros ! Sûrement que ceux envoyés sur Mars par la NASA sont plus précis que ça…

Paroles d’élèves :

« Nous avons rencontré comme difficultés :

  • manque de précision —> grâce à un tableur nous avons réussi à minimiser ce manque.
  • les câbles des moteurs poussaient les gobelets et donc les touchaient —> nous les avons accrochés à l’aide de scotchs. Le reste n ‘était pas si dur … »

Défi n°3 : le ramasseur

Il faut faire glisser 3 gobelets dans la case « arrivée ». Le robot le plus rapide a gagné ! Durée prévue : 1h30 + finales

Ce défi est présenté sous forme d’une compétition pour augmenter encore l’aspect ludique et pousser à optimiser la démarche.

Les phases finales étaient organisées comme un championnat : des matchs avec élimination directe. Si les deux robots réussissaient à relever le défi, c’est le plus rapide qui gagnait.

Voici une vidéo de la finale, remportée par Elouann et Maxime (cliquer pour voir le film)

image026image028

Paroles d’élèves :

« Nos difficultés :

  • dans les virages il fallait ralentir la vitesse du robot pour que les gobelets ne s’échappent pas ,
  • il faut quand même aller vite pour avoir une chance d’arriver premier en ralentissant dans les virages.»

Exemples de montages :

image036image032image034

2e partie : les capteurs

Objectifs : - découvrir les capteurs - programmer avec des boucles conditionnelles (Si) - relever des défis plus complexes - faire les premiers défis collaboratifs

Tutoriels

Faire les tutoriels de Robot Educator 14 à 20

Exemples de productions d’élèves :
« Pour le tutoriel 14 on doit programmer notre robot afin qu’il s’arrête devant un obstacle à une distance précise (dans notre exemple on a choisi 25cm) »
image038
Avancer en illimité
Si obstacle détecté à 25cm
S’arrêter

Pour le tutoriel 16 notre robot devais détecter une ligne sombre et s’arrêter .

image040

avancer en illimité

détecter une ligne sombre

s'arrêter

Pour le tutoriel 18 notre robot devait détecter un contact .
image042

avancer en illimité

détecter un contact

s'arrêter

Défi n°4 : contourner un obstacle

image044image046L'obstacle

Le robot démarre en D quand il détecte un son fort (claquement de mains). Il avance jusqu’à un obstacle qu’il doit détecter sans toucher. On ne connait pas la distance entre D et l’obstacle. Le robot doit se garer en marche arrière jusqu’à toucher l’obstacle.

Exemple de productions d’élèves :
Algorithme :
1.démarre au bruit
2.avance jusqu’à être à 20 cm
3.pivote de 90° à gauche
4.recule jusqu’à toucher l’obstacle

Défi n°5 : contourner un obstacle / défi collaboratif

Le premier défi collaboratif de l'année.

image048

Le robot A démarre quand on claque dans les mains.
La distance à l’obstacle est inconnue.
Le robot A contourne l’obstacle sans le toucher.
Le robot A passe le relais au robot B : il le touche et s’arrête quand le robot B démarre.
Le robot B contourne l’obstacle et vient se garer (idem défi 4)

Exemples de productions d’élèves :

  1. démarrer au bruit

  2. avancer jusqu’à détecter un obstacle à 15 cm

  3. pivoter de 90° à gauche

  4. avancer de 25 cm

  5. pivoter de 90° à droite

  6. avancer de 25 cm

  7. pivoter de 90° à droite

  8. avancer jusqu’à toucher un obstacle

  9. démarrer au toucher

  10. avancer de 25 cm

  11. pivoter de 90° à droite

  12. avancer de 50 cm

  13. pivoter a droite de 90°

  14. avancer de 30 cm

  15. pivoter à droite de 90°

  16. avancer jusqu’à détecter un obstacle à 25 cm

  17. pivoter à gauche de 90°

  18. reculer jusqu’à toucher un obstacle

Défi n°6 : le labyrinthe

Le robot doit sortir d'un labyrinthe dont on ne connait pas la géométrie. Ce labyrinthe est composé d'éléments en « T » et d'autres en « L ».

image049

image050

Toutes les dimensions des éléments sont 20 cm (y compris leur hauteur).

1er temps : présentation du défi

2e temps : réflexion en groupe.
Une discussion est menée autour du labyrinthe. Des élèves font des propositions d’algorithmes qui sont testés en direct en simulant le robot avec un simple feutre de tableau.
Le fait de détecter la présence des obstacles avec le capteur d’ultra-sons est très vite proposé. La difficulté vient du fait qu’on ne sait pas de quel côté le robot doit partir.
Au bout de dix minutes, une solution acceptable est proposée.
Ce défi est toujours en cours de réalisation…