Projet morpion (via Snap4Arduino) : étapes pédagogiques

Ce projet peut être divisé en 3 étapes (A,B,C) distinctes. Un groupe d’ISN en Terminale pourra aborder chronologiquement la totalité des étapes. En Seconde ICN, plusieurs groupes peuvent travailler sur les différentes étapes et se rejoindre par la suite pour finaliser le projet.

Étape A : faire jouer l’humain contre l’ordinateur


Pas d’interface graphique, juste deux listes. Une liste ListE contenant les mouvements de l’Ergo (cases numérotées de 1 à 9), une liste ListH contenant les mouvements du joueur Humain.
Au niveau 1 et 2, l’ordinateur choisit une valeur aléatoire parmi les valeurs disponibles.

  • niveau 1 : le jeu s’arrête quand il n’y a plus de cases disponibles.
  • niveau 2 : niveau 1 + test de victoire ou défaite.
  • niveau 3 : niveau 2 + début d’intelligence artificielle avec la recherche des positions de victoire/défaite au coup suivant.
  • niveau 4 : niveau 2 + algorithme min-max.

Notions algorithmiques abordées : tests, listes, boucles tant que, booléens.
Outils spécifiques à Snap! : création de bloc, programmation évènementielle.

Étape 2 : les mouvements de l’ErgoJr


Construire un bloc qui permet d’amener l’Ergo à une position mémorisée dans une liste.
Une fois ce bloc réalisé, il suffit de créer la variable souhaitée (ex : position9), de mettre le robot en compliant, de l’amener manuellement à la position du pion n°9, et d’utiliser Get motors positions pour initialiser correctement la variable.
Au début, l’Ergo n’a qu’une seule position de chargement, nécessitant de le réapprovisionner à la main. Ensuite, il descend tout seul dans sa pile.
À la fin de cette étape, il est possible de jouer contre l’Ergo, mais on doit rentrer au clavier la position du pion que l’on pose.

  • niveau 1 : un seul endroit de chargement.
  • niveau 2 : pile de pions dans laquelle l’Ergo puise au fur et à mesure.

Notions algorithmiques abordées : tests, listes, boucles pour, booléens.
Outils spécifiques à Snap! : création de bloc, programmation évènementielle.

Étape 3 : Photorésistances et Arduino


Remplacer la saisie clavier par une perception automatique des photorésistances recouvertes par les pions.

  • niveau 1 : l’élève ne s’occupe pas de la partie électronique, juste de la partie algorithmique.
  • niveau 2 : l’élève effectue le montage sur la platine Arduino.

Notions algorithmiques abordées : tests, boucles pour, booléens.
Outils spécifiques à Snap4Arduino : différence entrées digitales/analogiques.

2 Likes