Blockly pour Thymio : boucle répéter

Bonjour,

J’utilise Blockly pour programmer Thymio avec mes élèves de 5èmes et je voulais leur faire faire un programme où Thymio clignote. Le problème c’est qu’il n’y a pas de possibilité de répéter indéfiniment et j’ai utilisé le minuteur pour alterner deux couleurs de LED mais on ne peut utiliser le minuteur que deux fois.

Est-ce qu’il existe une solution ou est-ce tout simplement impossible ?

Merci beaucoup !

Claire

Bonjour @ClaireMajd

Je n’ai pas de Thymio réel, je travaille avec un Thymio virtuel qui n’est pas compatible avec Blockly apparemment.

J’ai écrit en langage VPL l’équivalent de ce qu’il faut reproduire avec Blockly (ou avec n’importe quel logiciel). Si tu connais VPL tu feras très facilement la conversion.

Le clignotant que tu veux programmer a 2 états stables, éteint et allumé ou rouge et bleu pour moi.
Il faut donc créer 2 variables qui mémorisent ces 2 états distinctement.

Lecture de mon VPL :
La 2ème ligne : Au bout d’un certain temps si je suis rouge (led au Nord Ouest), alors je le mémorise (led NE), je désactive l’état rouge (led NO) et je passe en bleu.
La 3ème ligne : Au bout d’un certain temps si je suis bleu (led NE), alors je le mémorise (led NO), je désactive l’état bleu (led NE) et je passe en rouge.
La 1ère ligne sert à mettre en marche le système : si j’appuie sur le bouton central et que rien n’est mémorisé (leds NE et NO éteintes) alors je passe en rouge et je le mémorise (led NO).
Les lignes 1 et 3 forment une fonction logique OU qui ne peut pas être réalisée avec VPL.
Si on pouvait écrire la fonction OU sur un seul bloc, ou pourrait utiliser une seule mémoire qui serait par exemple allumé. En effet les 2 états stables allumé et éteint sont complémentaires.

La même chose avec Scratch, beaucoup plus concis :

Bonne continuation .

Cordialement

2 « J'aime »

Bonjour @wire68

Merci beaucoup pour votre réponse !

Je ne connais pas VPL mais avec vos explications j’ai pu créer le programme suivant sur Blockly.
Je n’ai pas de Thymio avec moi pour tester mais je le ferai dès vendredi au collège.

Encore merci !

Claire

1 « J'aime »

Bonjour,

Je me dépêche de vous écrire avant ce vendredi pour que vous puissiez expérimenter avec Thymio plus de programmes qui pourraient vous convenir :slight_smile:

J’ai testé votre code. Thymio clignote qu’une fois, mais en regardant votre code de VPL, je me suis dis que vous voudriez avoir un clignotement « non-stop ».

L’action « lancer timer pour 1000 millisecondes » signifie que l’événement « timer écoulé » se répétera chaque 1000 milliseconde. Donc, si vous lancer deux timers pour 1000 millisecondes chacun, Thymio recoit deux événements « timer écoulé » en même temps.

Je vous propose d’ajouter les lignes pour éteindre les timers dès qu’ils sont écoulés. Voici le résultat qui pourrait vous convenir :

Il y a aussi une solution où il est possible d’utiliser un timer pour faire clignoter le robot. Cet exemple pourrait aussi être utilisé comme le code qui est proche vers le code de VPL, vu qu’on y utilise un seul timer :


Qu’est que vous en pensez? Ce serait intéressant pour moi de savoir le résultat de vos essais et si vous avez encore des questions, on est là :slight_smile:

1 « J'aime »

Bonjour @Genia_B

Merci beaucoup pour ces deux programmes !

Je regarde et je teste vendredi … il faut que je comprenne le fonctionnement du minuteur … je vous tient au courant !

Claire

1 « J'aime »

Bonjour.

Au début, j’ai eu du mal moi aussi avec le mot « minuteur » dans blockly qui pour moi est associé avec ce que l’on utilise en cuisine: il ne fonctionne qu’une fois.

Je verrai plutôt comme nom un « métronome » ou un « cadenceur » ou encore une « horloge » qui « tic » tous les temps. Pour vous, il « tic » tous les 1000 ms.

Dans VPL, c’est un « vrai » minuteur. image Il ne fonctionne qu’une fois.

Thierry

Bonjour

J’ai testé les programmes envoyés par @Genia_B, cela fonctionne très bien et du coup pas besoin de deux minuteurs !
En effet, "lorsque le minuteur arrive à expiration " signifie « toutes les 1000 ms » quand on a défini le minuteur à une période de 1000 ms.

Un programme que je pensais simple au départ (faire clignoter Thymio) s’avère finalement compliqué à faire faire à des élèves de 5ème.

Encore merci pour vos réponses !

Je vais maintenant chercher des activités plus simples pour mes 5èmes !

Claire

2 « J'aime »