Extension pour Scratch

Introduction

Vous pouvez maintenant programmer votre robot Thymio avec l'extension Scratchx afin de lui permettre d'éviter les obstacles, de suivre une ligne, d'éviter de tomber de la table, de lire des codes barres, de faire des dessins, de jouer & enregistrer des sons. utilisez l'accéléromètre et les différents capteurs ! Thymio est un projet éducatif open source et open hardware. En savoir plus...

Scratch est un projet du "Lifelong Kindergarten group" du "MIT Media Lab".

De quoi avez-vous besoin ?

Un robot Thymio

Un dongle sans-fil ou un cable USB

Un ordinateur

Premiers pas

1) Téléchargez Aseba

Version 1.6.1

2) Branchez Thymio & lancez Thymio Web Bridge

Cette application crée un pont entre Thymio et Scratch !

Quelles sont les caractéristiques de THYMIO ?

Le projet Thymio est le résultat d'une collaboration de plusieurs institutions et contributeurs reconnus mondialement. Le projet est populaire en France et en Suisse et commence à s'étendre dans le monde entier. En savoir plus...

À propos de l'extension ScratchX pour Thymio

L'extention ScatchX pour Thymio est développé et maintenue par Mobsya, une association à but non lucratif pour la robotique éducative, avec le soutien de l'écosystème Thymio. Mobsya distribue le robot open source et open hardware Thymio, son software et des activités éducatives.

Blocs

Syntax:

avancer(distance (~mm))

Avancer de distance en "simili mm". Si la distance est négative, le robot recule. Vitesse environ 100mm/s. Si la valeur est non renseignée, le robot ne s'arrête pas.

Syntax:

avancer(distance (~mm)) avec vitesse (valeur (~mm/s))

Avancer de distance (approx. des mm) avec une vitesse donnée (approx. des mm/s). Si la distance est négative, le robot recule. Si la valeur est non renseignée, le robot ne s'arrête pas.

Syntax:

avancer (distance) en (durée) s

Avance de valeur en "simili mm" en durée secondes. Si la distance est négative, le robot recule.

Syntax:

Cercle rayon(rayon) angle (angle

Arc de cercle de rayon "mm" et d'angle en "degrés". Si le rayon > 0, il va vers l'avant sinon vers l'arrière. Si angle > 0, commence à droite, si négatif, commence à gauche.

Syntax:

tourner (angle (~degrés))

Tourne sur place de angle en "simili degrés" (vers la gauche si < 0. Vers la droite si > 0) puis s'arrête. Imprécis, d'où l'absence d'unité indiquée.

Syntax:

tourner(angle (~degrés)) en (durée) s

Tourne sur place de valeur en "degrès" en durée secondes (vers la gauche si > 0, vers la droite si < 0) avec une vitesse donnée. Si angle non renseigné, le robot ne s'arrête pas et tourne en continu.

Syntax:

moteur[gauche, droite or tous]

Fixe la puissance des moteurs gauche,droite ou les deux en unités Aseba (de -500 à 500).

Arrête les moteurs (puissance à 0)

Syntax:

leds rvb[dessus, arrière-gauche, arrière-droite, tous](valeur rouge)(valeur vert)(valeur bleu)

Fixe la couleur RVB des leds de dessus et de dessous du robot

Syntax:

leds cadran suivante[gauche, droite]

Allumer led de la position suivante du cadran vers la gauche ou vers la droite.

Syntax:

leds cadran toutes (led 0)(led 1)(led 2)(led 3)(led 4)(led 5)(led 6)(led 7)

Allume les leds de 0 à 7 avec une intensité de 0 à 32.

leds clear

Éteint tout sauf les leds associés automatiquement aux capteurs

Syntax:

Leds fixer couleur(valeur (0 à 200)) pour [dessus,dessous,tout]

Fixe la valeur de couleur pour la partie inférieure ou supérieure du robot ( ou les deux ). Codage couleur Scratch de 0 à 200 (0 = rouge).

Syntax:

Leds changer couleur (valeur) pour [dessus,dessous,tout]

Ajoute la valeur à la couleur actuelle pour le haut, le bas ou les deux parties du robot. Utilise le codage couleur Scratch.

Syntax:

enregistrer son (valeur)

Enregistre le son rx.wav de la carte SD où x est un nombre entier (par exemple, r1.wav).

Syntax:

rejouer son (valeur)

Rejoue le son enregistré rx.wav sur la carte SD où x est un nombre entier (par exemple, r1.wav).

Syntax:

odomètre(direction)(x)(y)

Initialiser l'odomètre direction en ° et coordonnées x et y en mm. Initialise la position du lutin Thymio dans Scratch afin de le faire correspondre au Thymio physique.

Syntax:

leds capteurs h (led 1)(led 2)(led 3)(led 4)(led 5)(led 6)(led 7)(led 8)

Allume les leds des capteurs horizontaux avec une intensité de 0 à 32 chacune (0 = éteint). Il y a 8 leds (dont 2 pour le capteur central)

Syntax:

leds capteurs v (led 1)(led 2)

Allume les leds des capteurs de dessous avec une intensité de 0 à 32 chacune (0 = éteint).

Syntax:

leds temperature(rouge)(bleu)

Allume les leds ("chaude" rouge, froide" bleu) avec une intensité de 0 à 32 chacune (0 = éteint).

Syntax:

leds microphone (valeur)

Allume la led du micro avec une intensité de 0 à 32 (0 = éteint).

Syntax:

leds rc (valeur)

Allume la led de la télécommande avec une intensité de 0 à 32 (0 = éteint).

Syntax:

emission (valeur)

Envoie une valeur entière 10 bits par les capteurs de proximité horizontaux (broadcast local). Utilise prox.comm.tx

Syntax:

Reception (valeur)

Reçoit un entier 10 bits par les capteurs de proximité horizontaux. Utilise prox.comm.tx

Retourne la température en °C

Syntax:

Mesure moteurs [gauche, droite, tous]

Renvoie la puissance réelle (pas celle programmée) des moteurs. Utile pour traiter la dérive des moteurs

Syntax:

inclinaison [avant-arrière, dessus-dessous, gauche-droite]

Retourne une valeur d'accéléromètre selon un axe (gauche-droite, dessus-dessous- avant-arrière). Si la valeur est inférieure à 20, un choc a été détecté. De 0 ( rot 0°) à 22 (rot 90°)

Syntax:

capteur horizontal (n° du capteur)

Renvoie la valeur retournée par un capteur de proximité horizontal (de 0 à 5 devant, de 6 à 7 derrière). Objet détecté si la valeur est supérieure à 2000 (lumière réfléchie plus importante si l'objet est proche), non détecté si la valeur est inférieure à 1000. Max 5000. Pas très fiable si on veut exploiter une valeur précise supérieure à 0 et inférieure à 1000.

Syntax:

capteur horizontal (tout à gauche, gauche, centre, droite, tout à droite, arrière gauche, arrière droite)

Renvoie la valeur retournée par un capteur de proximité horizontal (tout à gauche, gauche, centre , droite, tout à droite, arrière gauche et arrière droite). Objet détecté si la valeur est supérieure à 2000 (lumière réfléchie plus importante si l'objet est proche), non détecté si la valeur est inférieure à 1000. Max 5000. Pas très fiable si on veut exploiter une valeur précise supérieure à 0 et inférieure à 1000.

Syntax:

capteur dessous (N° du capteur)

Renvoie la valeur retournée par un capteur de dessous de position donnée (de 0 pour le gauche, 1 pour le droit). Détecte un sol blanc si la valeur est supérieure à environ 450 (intensité de la lumière réflèchie plus importante si le sol est clair) et noir si la valeur est inférieure à environ 400. Maximum 950

Syntax:

Distance [devant, derrière, dessous]

Distance d'un obstacle calculée à partir des capteurs horizontaux. Renvoie la valeur moyenne pondérée de détection d'un objet fournie par les capteurs horizontaux avants ou arrières ou les capteurs de dessous. De 0 à 190 (190 si il n'y a rien devant le capteur).

Syntax:

Angle [devant, derrière, dessous]

Angle sous lequel un obstacle est vu depuis le robot, calculé à partir des capteurs horizontaux d'un obstacle (0 puis croît à 32 max puis décroît sur le côté -> 0). Renvoie la position angulaire moyenne pondérée de détection d'un objet donnée par les capteurs horizontaux avants ou arrières ou les capteurs de dessous. Si l'objet est fin, l'angle peut passer brutalement par 0. De plus, même val 0 pour pas d'obstacle ou obstacle en face.

Renvoie une chaine des valeurs des 7 capteurs horizontaux. De 0 à environ 5000 (7x).

Renvoie une chaine des valeurs des 7 capteurs horizontaux. De 0 à environ 5000 (2x).

Retourne l'intensité du bruit détecté par le micro (supérieure à 2 si un bruit est détecté). De 0 à 10.

Syntax:

leds couleurs[dessus,dessous-gauche,dessous-droite, tous]

Donne la couleur LED du haut, du bas gauche ou bas droit. Renvoie le code couleur selon le codage couleur Scratch. De 0 à 197

Syntax:

mesure odomètre [direction,x,y]

Renvoie l'angle ou la distance x, y relative à l'initialisation en mm. (10 correspondant à 50mm)

Détecte un bruit. Anciennement nommé "clap".

Donne une valeur moyenne des trois axes de l'accélèromètre indiquant un choc.

Syntax:

joeur son SD (valeur)

Joue le son px.wav de la carte SD où x est un nombre entier (par exemple, p1.wav).

Syntax:

objet détecté [devant, derrière, dessous]

Détection visuelle devant, derrière ou dessous. Passe à true dès qu'un des capteurs est > 0.

Syntax:

jouer son système [valeur]

Joue un son système (valeur de 0 à 7).

Syntax:

jouer note (Fréquence) pendant (durée) s

Joue la note de fréquence "Frequency" durant la durée exprimée en secondes.

Syntax:

tourner(angle) avec vitesse(vitesse(~mm/s))

Tourne sur place de valeur en "degrés" (vers la gauche si > vers la droite si < 0) avec une vitesse donnée. Si angle non renseigné, le robot ne s'arrête pas et tourne en continu.

Syntax:

bouton [central, devant, derrière, gauche, droite]

Indique si un bouton a été touché 0 au 1 (faux ou vrai)