Vous êtes sur la page 1sur 31

Petit guide des possibilits

dutilisation du logiciel Scratch


en Technologie
Prsentation du logiciel
Mon premier programme avec scratch
Programmer les interfaces du laboratoire
La programmation de la brique NXT
Linterface Picoboard
La carte Arduino Uno
Linterface Robo computing
Un logiciel tout faire !

Jean-Paul Bricard, Collge Pierre Brossolette dans lAube


1. LA PRESENTATION GENERALE
Dvelopp par le groupe de recherche Lifelong Kindergarten auprs du laboratoire Mdia du MIT, Scratch est un nouveau
langage de programmation qui facilite la cration dhistoires interactives, de dessins anims, de jeux, de compositions
musicales, de simulations numriques ainsi que leurs partages sur le Web.

Scratch est un logiciel libre conu pour initier les lves, ds lge de 8 ans, des concepts fondamentaux en mathmatiques et
en informatique. Il repose sur une approche ludique de lalgorithmique, pour les aider crer, raisonner et cooprer. Il
favorise galement le partage sur le Web. A partir de 2007, le site Web a t ouvert afin de permettre tous d'une part, de
publier, donc de faire partager, ses projets sur le Web, et d'autre part d'apporter une aide la mise en uvre de Scratch.

Quest ce que cest ?

Scratch est dynamique, il permet de modifier le code du programme en cours


dexcution. Orient multimdia pour lenseignement lunivers informatique
des enfants, il traite avec une grande facilit des concepts de base de la
programmation comme les boucles, les tests, les affectations de variables, et
surtout de la manipulation des objets, comme les sons et les vidos.

Scratch est visuel, tout le code est directement inscrit dans la langue
Le principe
maternelle de lenfant (une vingtaine de langues europennes est disponible)
sous forme de briques en couleurs (par exemple les contrles en jaune, les
Des briques assembles variables en rouge, les mouvements en bleu).
graphiquement constituent
le programme. Scratch est libre et permet ainsi lenseignant de diffuser sa pdagogie par
une interactivit quasi-ludique des objets manipuls par ces briques logicielles.
Le nom de Scratch fait rfrence cet art de mlanger des sons grce aux
tables de mixage, comme cette possibilit de rutiliser des objets.
Tlchargements
Scratch en version 1.4 Nous allons exploiter les diffrentes possibilits dinteraction avec diffrentes
Scratch en version 2.0 interfaces utilises au collge..
Tutoriel de prise en main en franais
http://www.cndp.fr/ecolenumerique/tous-les-numeros/boite-a-outices/apprendre-par-le-
Sites incontournables jeu/article/article/aide-memoire-recapitulatif-scratch.html

http://scratch.mit.edu/help/

Scratch 1.4 est un logiciel


multi plateformes
3. PREMIER PROGRAMME AVEC SCRATCH 2
La nouvelle version de Scratch inclut dans ses possibilits lexploitation dune camra vido utilise comme capteur. Nous allons
raliser un programme de dtection de mouvement dans une zone prcise. Les mouvements dtects vont dclencher une
alarme. Ce programme peut tre utilis dans le cadre du thme confort et domotique, pour illustrer la fonction scurit.

Quand Scratch 2.0 est lanc, passer le logiciel en


franais en cliquant sur licne reprsentant un
globe terrestre.

Faites disparatre le chat.

Cliquer sur longlet Scripts . Choisir le menu


Evnements . Faire glisser la commande dans la zone
rserve aux programmes.

Le programme dmarrera en cliquant sur le drapeau de


couleur verte.

Attention, Scratch 2.0 fonctionne


exclusivement sous Windows
3. PREMIER PROGRAMME AVEC SCRATCH 2
Dans un deuxime temps, nous allons configurer la camra. Cliquer sur loption capteurs .

Faire glisser et poser les deux blocs ci-contre. Les accrocher au bloc prcdent.

Cliquer sur le bloc activer la vido . Cet essai est ralis avec une camra vido
intgre lordinateur portable.

Nous allons crer une zone


sensible sur lcran.

Ce lutin, encore appel


sprite prendra la forme dun
rectangle de couleur rouge.

La vido est maintenant active.

Choisir une couleur et dessiner un


rectangle dans lditeur.

Cliquer sur le bouton vectoriser .


3. PREMIER PROGRAMME AVEC SCRATCH 2
Cliquer prsent sur longlet Script . Cest normal quil soit
vide car le script prcdent est attach la scne. Faire
glisser cette instruction. Cest le dbut du programme.

Crer maintenant une boucle rptition


infinie.

La zone sensible est dfinie. Crer maintenant un test.


Passer la main devant la camra
pour faire un essai.

Comment dtecter le mouvement ? Le programme complet

Il faut crer un oprateur.

Prparer linstruction de
dtection de mouvement

Dtection dun point en mouvement dans la zone cest--dire sur le lutin.

Si le mouvement dtect dans la


Il ne reste plus qu lancer et
zone est suprieur 70%
tester le programme.

Dans ce cas, une alarme va tre dclenche sous forme dun son jou.
3. PREMIER PROGRAMME AVEC SCRATCH 2
Numraire, bijoux, tlphones et ordinateurs portables : les cambrioleurs qui
svissent depuis quelques semaines dans l'Aube sont la recherche d'argent et
d'objets facilement revendables. Ils oprent en fin d'aprs-midi, lorsque les maisons
non claires trahissent l'absence de leurs occupants, ou en pleine nuit lorsque
leurs victimes sont endormies. Ce scnario est celui qui inquite le plus les forces
de police. Ce week-end, une quinzaine de cambriolages ont t commis dans des
pavillons de l'agglomration troyenne, souvent aprs 22 h. Les malfaiteurs ont svi
la Rivire-de-Corps, Saint-Parres-aux-Tertes et Saint-Andr-les-Vergers.

Article tir de lEst-Eclair, 2013


Problmatique : Comment assurer la surveillance dune habitation ?

Une des rponses possibles voque la vidosurveillance.


Une autre rponse voque la dtection de mouvements autour des portes et des fentres.

Matriel ncessaire : Consignes :

- Une webcam
Modifier le programme prcdent pour
- Des enceintes permettre la surveillance des deux fentres.
- Le logiciel Scratch 2.0 install.
- Un fichier son de sirne au format .wav.

Comptences
vises
3. PREMIER PROGRAMME AVEC SCRATCH 2
Coup de pouce

Aide donne aux lves sous formes de diffrentes procdures ou programmes.

Pour dfinir une autre zone sensible

Pour charger un fichier son diffrent.

La commande envoyer tous


permet denvoyer un message dun La commande
programme un autre. sauvegarder va vous
La commande quand je reois
permet de dclencher un vnement permettre denregistrer
en fonction du message reu. tous vos essais.
3. PREMIER PROGRAMME AVEC SCRATCH 2

Dans un premier temps, il faut crer une ou plusieurs autres


zones sensibles. Ces diffrentes zones doivent tre ajustes
en fonction de la pice surveiller.

Des sprites ou lutins seront dessins dans lditeur sous


forme de rectangles.

Pour chacun des sprites , le programme ou script associ


est toujours identique.

Le script suivant est saisir pour tous les lutins.


Ce script est associ la scne 1. Si le
Le message alarme est envoy aux autres scripts message alarme est transmis, alors
lalarme va retentir.
PROGRAMMER LES INTERFACES DU LABORATOIRE
Scratch est bien un outil universel permettant le pilotage et la programmation dinterfaces que nous pouvons mettre en uvre en 4e ou 3e .

Matriels souvent prsents dans les laboratoires Matriels qui font leur entre

Carte Arduino Uno TM


Interface de puissance
pour Arduino Uno.
Lego TM
Windows : S4A
NXT
Enchanting
Windows

Carte dacquisition
Fischertechnik TM
Pico Board TM
ROBO LT
Windows
CONTROLLER
-Scratch 1.4
Scratchfisch
Linux Raspbian
Windows
- Scratch 1.4

Fischertechnik TM
ROBO Raspberry PI
INTERFACE Interface Piface
Scratchfisch Linux Raspbian Lgende
Windows Scratch 1.4
Marque
Matriel
Nom de lextension
de Scratch
Scratch 1.4 se dcline donc en plusieurs extensions . Plateforme
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LA BRIQUE NXT

Enchanting est la premire extension de Scratch que nous allons tester. Cest une version de Scratch 1.4 modifie.

Toutes les informations sont disponibles ici : http://wiki.scratch.mit.edu/wiki/Enchanting.

Pour tlcharger la dernire version dEnchanting, rendez-vous sur le site officiel :


http://enchanting.robotclub.ab.ca/tiki-index.php

Sur ce site, une documentation sous forme de cartes au format .pdf en franais permet une prise en main
rapide. Pour en savoir plus : cliquer ici.

PREPARATION DE LA BRIQUE NXT


Avant de pouvoir raliser et tester des programmes avec Enchanting, nous devons flasher le microprogramme rsidant dans la
brique NXT. Cette opration nest pas irrmdiable, on peut toujours revenir en arrire en utilisant le logiciel NXT Mindstorm
pour tlcharger le microprogramme dorigine.
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LA BRIQUE NXT

Relier le micro contrleur NXT lordinateur laide


de son cble USB.

Dans le menu Fichier , choisir la commande


Tlcharger le micrologiciel .

Cliquer sur Oui pour reformater le NXT. Une


petite musique retentit en fin de tlchargement et
lopration est russie !
PROGRAMMATION DE LA BRIQUE NXT

REALISATION ET PROGRAMMATION SUR UNE MAQUETTE DE DISTRIBUTEUR DE CROQUETTES

Le chat
Son matre Les croquettes

Distributeur
de croquettes

Expression du
Problme : comment partir besoin
en weekend tout en prenant
soin de son chat ?
Se substituer au matre
pour distribuer la
Extrait du cahier des charges fonctionnel nourriture au chat

Fonctions de services Critres Niveaux Tolrance


FP1 : Distribuer les croquettes pour chat Type de nourriture distribue Croquettes
pendant 48 heures. sches

Quantit de nourriture distribue par 100 g par jour +- 10%


distribution simple pour un chat
adulte

Rglage de la quantit distribue Aucun

Dure de la distribution 10 minutes +- 10


minutes
Horaires de distribution Dfinis par
lutilisateur

Type de distribution - Programm


- Manuel
PROGRAMMATION DE LA BRIQUE NXT

REALISATION ET PROGRAMMATION SUR UNE MAQUETTE DE DISTRIBUTEUR DE CROQUETTES

Extrait du cahier des charges fonctionnel (suite)

Fonctions de services Critres Niveaux Tolrance


FC1 : Maintenir la nourriture labri de lair Fermeture tanche du compartiment.

REALISATION DU PROGRAMME PAS A PAS


Configuration du moteur

Le servomoteur sera reli sur le port A.


Le programme va
dmarrer si on clique sur
le drapeau vert
Le dbut du programme :
PROGRAMMATION DE LA BRIQUE NXT

REALISATION DU PROGRAMME PAS A PAS

Configuration du moteur (suite). La vitesse de rotation est fixe 10/s, ce qui est trs lent.

La rfrence est fixe par le compte-rendu du capteur angulaire


du servomoteur. Cest le point de dpart de la rotation.

Le moteur tourne de 90 et sarrte.

La rfrence est fixe nouveau et le moteur tourne de 90


dans le sens contraire. Retour la position de dpart.

Configuration dun capteur de contact

Dans lditeur, choisir un capteur de


contact. Faire glisser le bloc sur le
port 1. Il faudra relier le capteur sur
lentre 1.
PROGRAMMATION DE LA BRIQUE NXT

REALISATION DUN PROGRAMME PAS A PAS

Ralisons le programme suivant :

Une boucle est cre pour que les actions se rptent linfini.

Le programme attend un appui sur le bouton poussoir.

Dans ce cas l le moteur tourne de 90.

Un nouvel appui sur le bouton permet une rotation angulaire de


90 dans lautre sens.

Ce prototype de distributeur de croquettes peut


servir de support pdagogique pour faire
merger la notion de condition de commande
et de logique combinatoire de base : et, ou,
non.

Laction sur le bouton poussoir permet de commander louverture et la fermeture en douceur du distributeur de croquettes.
PROGRAMMATION DE LA BRIQUE NXT

Nous allons ajouter un capteur de distance ultrasons. Si le chat sapproche


moins de 10 cm, le distributeur souvre en douceur. Le distributeur se referme si
aucune prsence du chat nest dtecte pendant 10 secondes.

Le capteur ultrasons est utilis


pour mesurer la distance. Il faut le
connecter sur lentre 2 du NXT.

Le bouton poussoir permet de commander en priorit


louverture ou la fermeture du rcipient de croquettes.

Comptences
vises

Le problme suivant peut tre pos : quelle condition souvre le distributeur de croquettes ?
Les activits possibles :
- tester le fonctionnement de la maquette et proposer une rponse sous forme dun texte.
- identifier les conditions directement dans le programme.
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LINTERFACE PICOBOARD

L'interface Picoboard permet


d'acqurir des phnomnes
physiques de toutes sortes.

- Mouvements
- Intensit sonore
- Intensit lumineuse
- Appuis
- Contacts
- Variation de rsistivit.

Picoboard est disponible chez :


https://www.sparkfun.com/products/10311

Picoboard est aussi compatible avec Scratch 1.4 et Scratch 2.0 sous Windows.

Vous pouvez rcuprer le driver cette adresse :

http://www.picocricket.com/picoboardsetupUSB.html

Les capteurs tilt et


distance concernent
linterface
des LEGO Education WeDo.
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LINTERFACE PICOBOARD ET SIMULATION DECAIRAGE AUTOMATIQUE

Scratch permet de raliser des animations.


Commencer par dessiner une maquette de
maison avec Google Sketchup 8.

Exporter l'image puis la mettre en forme (avec Paint par exemple) :

Le petit paralllpipde rectangle reprsente une source de lumire (teinte pour l'instant).

Enregistrer le document au format .png sous le nom maison1 .

Recommencer la mme opration en simulant l'clairage.

Enregistrer cette volution au format .png sous le nom maison2 .


PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LINTERFACE PICOBOARD ET SIMULATION DECAIRAGE AUTOMATIQUE

Dans Scratch 1.4, ralisons le programme suivant :

Cliquer sur le chat avec le bouton droit et faites-le disparatre !


Importer un nouvel objet (icne dossier) : maison1.
Cliquer sur l'onglet : costumes.
Cliquer sur le bouton : importer et rcuprer : maison 2.
Cliquer alors sur l'onglet : scripts et saisir le "corps" du programme.

Pour lancer le programme, cliquer sur le drapeau vert.


En appuyant une fois sur le bouton de la Picoboard, la maison s'illumine.
En appuyant une nouvelle fois, la maison s'teint.
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LINTERFACE PICOBLOC ET SIMULATION DECAIRAGE AUTOMATIQUE

Une premire variante du programme : clairage automatique en


fonction de l'ambiance lumineuse extrieure (ci-contre).

Le seuil de luminosit est fix 20%. Ce rglage est effectuer


en fonction de la luminosit ambiante.

Dans lobscurit cette valeur est basse.

Une deuxime variante pour que l'clairage obisse aux sons (ci-dessous).
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LA CARTE ARDUINO UNO .

Une toute petite carte que nous pouvons obtenir


facilement. Cliquer ici pour en savoir plus.

Un cble USB est ncessaire pour l'alimenter et lui


transfrer des programmes.

Une version du logiciel Scratch 1.4 permet de la


programmer en temps rel.

Vous pouvez la rcuprer cette adresse : http://s4a.cat/

Vous aurez galement besoin de l'diteur de programme


Arduino que l'on peut rcuprer cette adresse :
http://arduino.googlecode.com/files/arduino-1.0.5-
windows.zip

Pour terminer, il faut galement rcuprer le firmware


cette adresse et le transfrer dans la carte avant de
lancer Scratch (s4a).
http://s4a.cat/downloads/S4AFirmware15.ino

Rcuprer ce fichier et le copier sur le bureau par exemple.

Lancer alors le logiciel Arduino et ouvrir le fichier.

Au dmarrage, rpondre OUI pour que le fichier soit mis au bon


emplacement.
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LA CARTE ARDUINO UNO .

Brancher alors votre carte Arduino et cliquer sur le bouton tlverser"


dans le menu fichier.

Une fois le tlchargement vers la carte Arduino effectu, le programme


devient rsident mme si l'alimentation est coupe.

On peut alors lancer le logiciel Scratch pour Arduino. En revanche, on ne


peut pas transfrer les programmes conus sous Scratch pour qu'ils
deviennent rsidents. Cest un problme en cas de conception de robot
autonome !

Si linstallation prcdente a t ralise


correctement, au dmarrage de S4A, le logiciel
tente de se connecter la carte.

Si vous connectez linterface


Arduino, le message ci-contre
indique que la connexion est
tablie.
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LA CARTE ARDUINO UNO .

Dans S4A, vous dcouvrez les commandes compatibles avec cette interface, en
cliquant sur longlet mouvement .

La carte Arduino UNO ne suffit pas en elle-mme


piloter des actionneurs comme des lampes ou des
moteurs lectriques. Il faut lui adjoindre une carte de
puissance comme celle disponible ici.

Caractristiques techniques

6 sorties sur relais


6 entres analogiques
I/O Shield pour Arduino 6 entres numriques
kit mont Velleman charge de 1A (max.) par sortie
VMA05
http://www.velleman.co.uk/contents
/en-uk/ka05.pdf

Les instructions : digital n [on ou off]


permettent le pilotage des sorties de
linterface.

Le compte rendu des entres logiques ou


analogiques se programme partir de
value of sensor |Analog ou Digital | . Cette carte se monte directement
sur la carte Arduino.
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LINTERFACE ROBO COMPUTING PORTE DE GARAGE

Quelques ressources en ligne :


http://ft-datenbank.de/web_document.php?id=46ab361a-2af2-4aea-aa81-a4c7f6c94dc0 [Notice de la bote et diffrentes pices]

http://ft-datenbank.de/web_document.php?id=6825aef8-e096-4f18-addf-979415bbb469 [Page 38 pour construire la maquette]

http://www.fischertechnik.de/en/PortalData/1/Resources/didactic/documents/activity-booklet/ProfiETech/E-Tech_F.pdf
[Tutoriel dutilisation du module E-Tech (que nous nutiliserons pas dans ce cas)]

INTERFACE
ROBO

http://ft-datenbank.de/web_document.php?id=b97581ed-4f74-4a83-8109-c98ef8cb520c [Documentation technique de linterface


ROBO]
http://ft-datenbank.de/search.php?keyword= [Lien pour retrouver une documentation technique de la marque au format
PDF]
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LINTERFACE ROBO COMPUTING PORTE DE GARAGE

Pour installer ScratchFisch, respectez bien la procdure ci-dessous :

Votre ordinateur doit tourner sur Windows XP ou XP-Pro imprativement.


Si votre machine est munie dun client pour permettre lidentification sur un rseau, dsinstallez-le si possible.
Il faut commencer par installer le support JAVA sur lordinateur. Vous pouvez le tlcharger cette adresse.

Il faut galement installer le driver de linterface ROBO. Vous le trouvez dans le CDROM du logiciel ROBO Pro : pour cela,
connecter linterface ROBO lordinateur, attendre la bote de dialogue relative linstallation dun nouveau matriel. Choisir
linstallation manuelle en spcifiant lemplacement.

Si vous ne disposez pas du cdrom, vous pouvez rcuprer le driver cette adresse.

Maintenant, il faut vous rendre ladresse de ScratchFisch : http://www.scratchfisch.org/download.html

Choisir le deuxime lien


correspondant linstallation
manuelle.
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LINTERFACE ROBO COMPUTING PORTE DE GARAGE

Glisser le rpertoire ScratchFisch


sur le bureau pour le dcompresser.

Dans le dossier ScratchFisch,


retrouver le sous-rpertoire Binaries.

Recopier son contenu dans :


C:\WINDOWS\SYSTEM32

Dans le rpertoire
ScratchFisch sur le bureau,
lancer lapplication Start-
ScratchFisch.exe
> Ce message doit safficher si la connexion avec linterface ROBO est correcte
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LINTERFACE ROBO COMPUTING PORTE DE GARAGE

Il faut maintenant rcuprer Scratch 1.4 ladresse suivante : http://scratch.mit.edu/scratch_1.4/


Il ne reste plus qu installer et lancer Scratch 1.4.
Pour pouvoir piloter linterface ROBO, il faut encore crer un fichier de dmarrage vide mais qui contient le protocole
pour que le logiciel communique avec linterface.

A partir de Scratch, ouvrir


le fichier Heartbeat
situ dans les exemples
Beispiele du
rpertoire ScratchFisch.

Crer un nouveau lutin en allant chercher le chat dans la


bibliothque, dans le rpertoire Animals .

Supprimer les objets Trommel et Hertz . Enregistrer ce fichier vide sur le bureau avec le
nom Scratch pour ROBO . Cest partir de ce fichier que Scratch 1.4 sera lanc dornavant.
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LINTERFACE ROBO COMPUTING PORTE DE GARAGE

Avertisseur Moteur
sonore lectrique
Contacteur fin de course
relier sur I1 pour
I1 dclencher louverture et
I2 I3
Interface la fermeture de la porte.
ROBO
Contacteur fin de course
relier sur lentre I3
pour dtecter la porte en
position ouverte.

Contacteur fin de course


relier sur I2 pour
dtecter la porte en
position ferme.

Le moteur est relier sur


la sortie M1.
Cblage des
composants sur
linterface Lavertisseur sonore est
relier sur la sortie M2.
PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LINTERFACE ROBO COMPUTING PORTE DE GARAGE

Comment rendre louverture et la fermeture de la porte moins dangereuses ?

Rponses possibles :

dclencher un avertisseur sonore


pendant louverture et la fermeture de
la porte ;

dclencher une lumire clignotante


pendant louverture et la fermeture de
la porte ;

dtecter une difficult de fermeture


ou douverture de la porte.

Les programmes suivants permettent


de comprendre comment dclencher
deux actions simultanment.

La ralisation de la maquette peut tre envisage dans le cadre de la ralisation collective.


PROGRAMMER LES INTERFACES DU LABORATOIRE
PROGRAMMATION DE LINTERFACE ROBO COMPUTING PORTE DE GARAGE

Programme initial Programme modifi

Le premier programme permet louverture et la fermeture


de la porte de garage partir dun appui sur le contacteur
fin de course reli sur I1 Eingang1 .

La sortie Motor1.7 :
1 est le numro de la sortie ici M1.
-7 et +7 correspondent la quantit de courant envoy au
moteur ainsi que son sens de rotation. La vitesse de rotation
du moteur peut varier de 0 8.
La variable son quand elle prend
Le second programme permet de faire retentir une la valeur 1, permet de dclencher
alarme pendant louverture et la fermeture de la porte. lavertisseur sonore par intermittence
Il est ncessaire de crer une variable. pendant louverture ou la fermeture
de la porte.