Fabriquer un "Matapof" librement inspiré de Roland Moreno


Le Matapof vous connaissez? Et Roland Moreno?
Roland Moreno est l'inventeur de la carte à puce. C’est une sorte de geo Trouvetout, un inventeur d’objets improbables. … qui ne servent à rien !?

C’est dans cette vidéo de l’INA sur Moreno que j’ai découvert le matapof. 

Le matapof est une machine pour les indécis. Elle permet d’effectuer un tirage au sort, de tirer à pile ou face. Mais il y a un truc pour pouvoir tricher comme l'explique Roland Moreno.



Dans mes conférences, je précise toujours qu'on peut faire une quantité de choses avec des leds et des boutons poussoirs. Je vous propose de faire une version (sans triche) du Matapof afin de travailler sur les aléatoires. 


Matériel et branchements

video de mon matapof en action.

Pour fabriquer votre Matapof pous aurez besoin de :
  • deux leds et leurs résistances ;
  • un bouton poussoir et sa résistance ;
  • des fils ;
  • un support - j'ai utilisé une bobine de fil vide.






Le programme


Le programme est constitué de trois piles de blocs.

La première comporte les blocs d’initialisation des trois composants. Et le déclenchement du tirage au sort lorsque le bouton est pressé.

La deuxième concerne le cycle d’allumage des leds si le résultat du tirage au sort est pile. Et la troisième, le cycle d’allumage si le résultat du tirage est face. Les deux cycles sont aléatoires dans le nombre d’alternance.

quand drapeau vert est pressé

mettre la variable hasard à 0 // la variable hasard pourra contenir deux valeurs 1 ou 2.

set gpio 18 to output low // la led positionnée sur le pin 12 / GPIO 18 est éteinte.

set gpio 27 to output low // la led positionnée sur le pin 13 / GPIO 27 est éteinte.

set gpio 17 to input // le bouton poussoir est configuré sur le pin 11/ GPIO 17.

répéter indéfiniment // la boucle de répétition contient le programme qui lance le tirage au sort lorsque le bouton est pressé.

si gpio 17 is high ? alors // si le bouton est appuyé

mettre hasard à nombre aléatoire entre 1 et 2 // la variable peut avoir deux valeurs 1 ou 2.

si hasard = 1 alors // si le tirage aléatoire entre 1 et 2 est de 1.

envoyer à tous pile // la valeur 1 correspond à un tirage pile.

si hasard = 2 // si le tirage aléatoire entre 1 et 2 est de 2.

envoyer à tous face // la valeur 2 correspond à un tirage face.







Programme du tirage pile

quand je reçois pile // le message pile est envoyé si la variable est 1

répéter nombre aléatoire entre 3 et 7 fois // les deux leds qui représentent pile et face vont s’allumer alternativement entre 3 et 7 fois.

set gpio 18 to output high / la led pile est allumée

set gpio 27 to output low / la led face est éteinte

attendre 0.2 secondes

set gpio 18 to output low / la led pile est éteinte

set gpio 27 to output high / la led face est allumée

Fermeture de la boucle de répétition aléatoire.

set gpio 18 to output high // la led pile est allumée pour signifier que le tirage au sort a donné pile.

set gpio 27 to output low / la led face est éteinte

attendre 10 secondes // après 10 secondes la led représentant le côté pile s’éteint.

set gpio 18 to output low


Programme du tirage face

quand je reçois face // le message face est envoyé si la variable est 2

répéter nombre aléatoire entre 3 et 7 fois // les deux leds qui représentent pile et face vont s’allumer alternativement entre 3 et 7 fois.

set gpio 18 to output high // la led pile est allumée

set gpio 27 to output low // la led face est éteinte

attendre 0.2 secondes

set gpio 18 to output low // la led pile est éteinte

set gpio 27 to output high // la led face est allumée

Fermeture de la boucle de répétition aléatoire et dernier cycle d’allumage pour terminer sur la led face.

set gpio 18 to output high // la led pile est allumée

set gpio 27 to output low // la led face est éteinte

attendre 0.2 secondes

set gpio 18 to output low // la led pile est éteinte

set gpio 27 to output high // la led face est allumée pour signifier que le tirage au sort a donné face.

attendre 10 secondes // après 10 secondes la led représentant le côté face s’éteint.

set gpio 27 to output low





Si vous souhaitez découvrir ce truculant personnage qu'était Roland Moreno, je vous invite à lire l'un de ses ouvrages : Théorie du bordel ambiant.

Prenez le temps offert par ce confinement pour imaginer, rêver, mettre un grain de folie dans votre vie ... et le conserver après.

Commentaires

Posts les plus consultés de ce blog

Scratch - Dessiner dans un repère orthonormé

Fabriquer une main articulée

Apprendre à programmer avec Arduino - LED et bouton poussoir