Scratch 3 et Raspberry Pi
Scratch 3 tourne désormais sous Raspberry Pi !
Vous pouvez partir de zéo en installant Buster sur une nouvelle carte : télécharger Buster.
Si vous disposez déjà d'une carte qui tourne déjà sous Buster , procédez à sa mise à jour en tapant dans le terminal les lignes de commandes suivantes.
Pour accéder aux extensions propres au Raspberry :
Raspberry Pi GPIO : pour contrôler les GPIO et les composants qui y sont connectés.
Ce bloc, de type instruction, est pourvu de deux menus déoulants.
Pour afficher le texte spécifié dans la zone de
saisie sur la matrice de leds.
Pour effacer, nettoyer, les éléments affichés sur la matrice.
Les 64 pixels qui composent la matrice peuvent être allumés (ou éteints) indépendamment les uns des autres. Ils peuvent également avoir leur propre couleur.
Si vous êtes intéressés par l'utilisation de Scratch et des extensions GPIO vous pouvez vous réferer à l'ouvrage que j'ai cosigné avec François MOCQ en décembre 2017 aux éditions ENI.
Certes il s'agit de la version 2 de Scratch pour Raspberry, mais vous devriez facilement pouvoir adapter les projets proposés avec cette nouvelle version.
Cette
version élaborée par la fondation en collaboration avec l’équipe Scratch du MIT
nécessite l’utilisation de la dernière distribution de Raspbian, Buster. Il est
préconisé d’utiliser un PI4. J’ai également testé sur un
PI3 et Scratch fonctionne. L’intérêt d’utiliser Scratch avec un Raspberry est la possibilité de
connecter différents composants sur les GPIO et de les contrôler facilement
avec Scratch. Pour cela, des extensions spécifiques, qui ne sont pas présentes
dans la version pour PC et Mac, sont utilisables.
Installation de Scratch 3
L’installation de Scratch 3 est simple.
Vous pouvez partir de zéo en installant Buster sur une nouvelle carte : télécharger Buster.
Si vous disposez déjà d'une carte qui tourne déjà sous Buster , procédez à sa mise à jour en tapant dans le terminal les lignes de commandes suivantes.
sudo apt-get update
sudo apt-get upgrade
Une fois une les mises à jour effectuées, procédez à l’installation de Scratch.
Une fois une les mises à jour effectuées, procédez à l’installation de Scratch.
sudo apt-get install scratch3
Scratch 3 Desktop est désormais présent dans le menu Programme.
Pour plus d’informations sur Scratch 3 vous pouvez jeter un coup d’œil par ici. Ce qui nous intéresse dans cet article ce sont les extensions spécifiques à Raspberry Pi.
Pour plus d’informations sur Scratch 3 vous pouvez jeter un coup d’œil par ici. Ce qui nous intéresse dans cet article ce sont les extensions spécifiques à Raspberry Pi.
Les extensions
Scratch
3 propose de nombreuses extensions qui permettent notamment de contrôler la
carte micro:bit et différents Lego robotique. Pour le moment celles-ci ne sont
pas disponibles pour le Raspberry. Scratch Link, le logiciel qui permet à Scratch
de communiquer via Bluetooth avec ces matériels, n’est pas encore au finalisé.
Pour accéder aux extensions propres au Raspberry :
- Cliquer sur Ajouter une extension. La bibliothèque s’ouvre.
- Trois extensions spécifiques sont disponibles.
Raspberry Pi GPIO : pour contrôler les GPIO et les composants qui y sont connectés.
Raspberry
Pi Sense HAT : pour programmer la carte Sense HAT avec sa matrice de leds
et ses différents capteurs.
Raspberry
Pi Simple Electronics : pour s’initier facilement à l’électronique en utilisant
des leds et des boutons poussoirs.
Dans mes conférences je dis toujours qu’on peut faire
une quantité de choses simplement avec des leds et des boutons !
Les blocs Raspberry Pi Simple Electronics
Je commence par cette première extension car elle est adaptée aux débutants. Elle permet d'initier facilement les plus jeunes à l'électronique et au fonctionnement dune bredboard en utilisant des boutons poussoirs et des leds.
Ce bloc chapeau est un bloc de type instruction. Il sert à créer une action, une instruction, en fonction de l'état du bouton poussoir. Il est pourvu de deux menus déroulants :
- le premier pour spécifier le GPIO sur lequel est connecté le bouton.
- le deuxième pour définir son état : pressed (appuyé) ou released (relâché).
Attention il s'agit de la nomenclature GPIO et non de la nomenclature Pin.
Ainsi pour un bouton positionné sur le Pin 13 (position physique) il faudra spécifier la valeur 27 (GPIO).
Ce bloc est spécifique pour allumer (on) et éteindre (off) une led dont la position GPIO est spécifiée grâce au menu déroulant.
De par sa forme, ce bloc s'insére dans la zone à valeur d'autres blocs pour élaborer des conditions en fonction de l'état du bouton poussoir (pressed/ appuyé ou released/ éteint).
Ce bloc ne comporte qu'un seul menu déroulant : le numéro de GPIO. Son action consiste à inverser (toggle) l'état de la led. Si la led est allumée, elle s'éteint. Si elle est éteinte, elle s'alume. C'est un interrupteur!!
Les blocs Raspberry Pi GPIO
Les anciennes versions de Scratch pour Raspberry proposaient déjà des
blocs spécifiques pour les GPIO. Une
fois l'extension sélectionnée les blocs Raspberry Pi GPIO s’affichent
dans la palette des blocs.
- Le premier, pour sélectionner le numéro de GPIO sur lequel est connecté le composant concerné par l’instruction.
- Le deuxième, pour définir l’état dans lequel il doit être pour entraîner l’action correspondante : high s’il est allumé et low s’il est éteint.
De
par sa forme, ce bloc s’insère dans les zones à valeurs d’autres blocs pour
élaborer notamment des conditions. Il est également pourvu de deux menus. déroulants. L'un pour spécifier le numéro de GPIO et l'autre son état.
Ce bloc est utilisé pour définir, paramétrer, le type
de composant connecté
Les blocs Raspberry Pi Sense HAT
La Sense HAT (info) est une carte additionnelle
qui vient se positionner sur le Raspberry, comme un chapeau (HAT).
Utilisée dans la station internationale (mission astro pi) pour effectuer les
expériences élaborées par des élèves, elle comporte :
·
une
matrice de 64 leds multicolores
· un capteur de pression
·
un
capteur d’humidité
· un capteur de température
· un accéléromètre et un gyroscope
· un magnétomètre
· un joystick
L’extension Raspberry Pi Sense HAT propose douze
blocs pour contrôler ces différents éléments. Lorsque l’extension est sélectionnée le simulateur de la Sense HAT s’ouvre en parallèle
ce qui vous permet d’élaborer votre projet sans brancher la carte.
Pour afficher une lettre.
Pour afficher le dessin créé sur le schéma de la
matrice qui apparait lorsque le menu déroulant est sélectionné.
Pour effacer, nettoyer, les éléments affichés sur la matrice.
Pour déterminer la couleur des pixels du motif ou du texte.
En sélectionnant le menu déroulant, un mélangeur de couleur, identique à celui disponible dans la palette graphique s’affiche.
En sélectionnant le menu déroulant, un mélangeur de couleur, identique à celui disponible dans la palette graphique s’affiche.
Pour déterminer la couleur des pixels de l’arrière-plan.
Les 64 pixels qui composent la matrice peuvent être allumés (ou éteints) indépendamment les uns des autres. Ils peuvent également avoir leur propre couleur.
Ce bloc sert à définir les coordonnées X et Y de la led qui sera allumée, ainsi que sa couleur.
Pour définir le sens d’affichage sur la matrice.
Quatre angles de rotations sont proposés dans le menu déroulant : 0 - 90 -
180 – 270.
Sur la sense HAT un joystick est présent. Il peut
être utilisé pour déplacer un sprite sur la scène de Scratch ou un élément
situé sur la matrice de leds.
Quatre directions sont proposées :
Quatre directions sont proposées :
- up = position vers le haut
- down = position vers le bas
- left = position vers la gauche
- right = position vers la droite
- centre = position centrale
De par sa forme, ce bloc s’insère dans la zone à
valeurs d’autres blocs pour élaborer notamment des conditions.
L'accéléromètre mesure la force de l'accélération, c'est-à-dire les "chocs" subis par la carte. Ce bloc permet d'élaborer une instruction particulière lorsque la sense HAT (et la Raspberry
avec) est secouée (shaken = secoué).
Le gyroscope mesure l'orientation, ce qui permet de savoir dans quelle direction pointe la carte. Les quatre positions détectables par le gyroscope
sont spécifiées dans le menu déroulant.
- forward = lorsque la carte est inclinée vers l’avant
- backward = lorsque la carte est inclinée vers l’arrière
- left = lorsque la carte est inclinée vers la gauche.
- right = lorsque la carte est inclinée vers la droite.
Exemples
Premier exemple : pour inverser l'état de la led (GPIO 17) lorsque le bouton poussoir (GPIO 27) est appuyé.
- si la led est éteinte, elle s'allume
- si la led est allumée, elle s'éteint.
Deuxième exemple: allumer une led positionnée sur le GPIO 17 (Pin 11) lorsque le bouton poussoir connecté au GPIO 27 (Pin 11) est pressé.
Troisième exemple : allumer (on) une led positionnée sur le GPIO 17 (Pin 11) lorsque la touche [flèche haute] du clavier est sélectionnée. Et l'éteindre (off) avec la [touche flèche bas].
Si vous êtes intéressés par l'utilisation de Scratch et des extensions GPIO vous pouvez vous réferer à l'ouvrage que j'ai cosigné avec François MOCQ en décembre 2017 aux éditions ENI.
Certes il s'agit de la version 2 de Scratch pour Raspberry, mais vous devriez facilement pouvoir adapter les projets proposés avec cette nouvelle version.
Commentaires
Enregistrer un commentaire