mode VPL - L`Atelier Canopé 78

Transcription

mode VPL - L`Atelier Canopé 78
PROGRAMMERTHYMIOENMODEGRAPHIQUE
(enanglais,VPL:VISUALPROGRAMMINGLANGUAGE)
Lelangagedeprogrammationgraphique(enanglaisVPL:VisualProgrammingLanguage)permetde
programmerThymiovisuellement.Ilestdisponiblededeuxfaçons:
•
•
LeprogrammeThymioVPLfournitunenvironnementVPLindépendant.
LeVPLestdisponiblecommeplug-inpourAsebaStudio.CliquersurChargerVPLsousl'ongletOutils
pourlelancer.
Lesfichierssauvegardésdansunenvironnementpeuventêtreré-ouvertsdansl'autreetvice-versa.
Survoldel'environnement
DansVPL,unprogrammeestécritenassemblantdespairesdeblocsd'événementetd'action.Lafenêtrese
présenteainsi:
1. Labarred'outilscontientlesboutonspourouvriretsauvegarderdesfichiers,lancerouarrêter
l'exécutionduprogramme,etchangerdemoded'édition.
2. Cettezoneestdédiéeàlaconstructionduprogramme.Leprogrammesertd'instructionaurobotpour
déterminersoncomportement.
3. Cetteligneindiquesilespairesévénement-actioncomposantleprogrammesontcorrecteset
complètes.
4. Lesblocsd'événementsdéterminentquandlerobotdoitdémarreruneaction.Cesblocspeuventêtre
ajoutésauprogrammeencliquantdessusouenlesglissantsurlecarrégauched'unepaire
événement-actionquiapparaîtdanslazoneprogramme.
5. Lesblocsd'actiondéterminentcommentlerobotdoitréagir.Cesblocspeuventêtreajoutésau
programmeencliquantdessusouenlesglissantsurleoulescarré(s)àdroited'unepaireévénementactionquiapparaîtdanslazoneprogramme.
6. EnmodeindépendantdeStudio,leprogrammetextecorrespondantauprogrammegraphiqueest
écritdanscettezone.QuandVPLestutiliséàl'intérieurdeStudio,leprogrammetexteestécritdans
Studio.
Documentréaliséparl’AtelierCanopédesYvelinesàpartirdusitewww.thymio.org
Boutonsdelabarred'outils
nouveau
Ceboutonouvreunenouvellepageviergedansl'éditeur.
ouvrir
Ceboutonouvreunfichierexistant.
enregistrer
Ceboutonenregistreleprogrammedanslefichiercourant.
enregistrer
sous
Ceboutonenregistreleprogrammedansunfichierchoisiparl'utilisateur.
chargeret
exécuter
Ceboutonchargeetexécuteleprogrammedanslerobot.
arrêter
Ceboutonarrêtelerobot.Unefoisqu'onarrêtelerobot,ilfautcliquerànouveau
surchargeretexécuterpourredémarrerleprogramme.
modeavancé
Ceboutonpermetdepasserdanslemoded'éditionavancé.Lemodeavancé
fournitdesfonctionnalitésadditionnelles.
information
Ceboutonchargecettepagededocumentationderéférence.
screenshot
Ceboutonpermetdeprendreunecaptured'écranduprogrammeVPL.
Assemblerdespaires
LaprogrammationdansVPLsefaitenassociantdesblocsévénementàunouplusieursblocsaction.Vous
pouvezlefaireencliquant-glissantlesblocsdanslazonedeprogrammation.Parexemple,unepaire
composéed'unévénementboutonetd'uneactionmoteursvouspermettradefaireavancerlerobotlorsque
sonboutonestpressé.
Plusieurspairesd'instructionspeuventêtreassemblées.Ellespeuventêtrecliquées-glisséespourles
réarranger.Cliquersurlebouton+permetd'ajouterunenouvellepairevideetcliquersurleboutonXpermet
d'eneffacerune.Unefoisleprogrammecréé,ildoitêtrechargédanslerobotencliquantsurlebouton
chargeretexécuterdelabarred'outils:
Pourrésumer,lesétapesdelaprogrammationvisuellesont:
1. Déposerunblocévénementsurlagauchedelapaireévénement-action
Documentréaliséparl’AtelierCanopédesYvelinesàpartirdusitewww.thymio.org
2. Déposerunouplusieursblocsactionsurladroitedelapaireévénement-action
3. Répéter1et2jusqu'àcequeleprogrammesoitcomplet
4. Cliquersurleboutonchargeretexécuteretvoirsilerobotsecomportecommeprévu
MODEBASIQUE
QuandVPLdémarre,ilestenmodebasique.Danscemode,seulcertainsblocssontvisiblesafinderendre
l'interfacefacileàcomprendre.
Blocsd'événements
boutons
Cetévénements'activelorsqueunouplusieursboutonssonttouchés.Pour
chaquebouton,grissignifieignorerlebouton,rougeindiquequeleboutondoit
êtretouché.Sitouslesboutonssontignorés,cetévénements'active
périodiquement20foisparseconde.
Cetévénementsedéclenchelorsquelerobotdétecteunobjetprocheouloin
durobot(maximum8-12cm).Pourcescapteurs,legrissignifiequelecapteur
capteursde
n'estpasprisencompte;blancsignifiequel'objetestproche;noirsignifieque
distance
l'objetestdétectémaispasprochedurobot.Sitouslescapteursnesontpas
horizontaux
prisencompte(tousgris),cetévénementseralancéautomatiquement10fois
parseconde.
Cetévénementsedéclenchelorsquelerobotvoitunsolsombreouclair.Il
mesurelaquantitédelumièreréfléchieparlesol.S'iln'yapasdesol,iln'yapas
capteurde
deréflexion.Pourcescapteurs,grissignifiequelecapteurn'estpasprisen
distanceau
compte;blancsignifiequelesolestclair;noirsignifiequelesolestsombre.Si
sol
touslescapteursnesontpasprisencompte(tousgris),cetévénementsera
lancéautomatiquement10foisparseconde.
détection
dechoc
Cetévénements'activelorsquelerobotdétecteunchoc(p.ex.siontape
dessus).
détection
Cetévénements'activelorsquelerobotdétecteunfortbruitcommeun
de
claquementdemainàproximité.
claquement
Blocsd'action
moteurs Cetteactiondéfinitlavitessedesmoteursgaucheetdroit(etdoncdesroues).
couleur
duhaut
Cetteactiondéfinitlacouleurduhautdurobotenunmélangederouge,vertet
bleu(RGB).
Documentréaliséparl’AtelierCanopédesYvelinesàpartirdusitewww.thymio.org
couleur
dubas
Cetteactiondéfinitlacouleurdubasdurobotenunmélangederouge,vertet
bleu(RGB).
Cetteactionjoueunemélodied'aumaximum6notesdéfiniesparl'utilisateur.
Pourchaquenote,sahauteurdépenddesapositionverticale.Unpointblanc
produitunenotequiduredeuxfoispluslongtempsqu'unpointnoir.Pourdéfinir
musique
unenote,cliquezsurlabarreoùvousvoulezqu'elleapparaisse.Unclicsurun
pointlechangedeblancànoir.Unclicsupplémentairetransformelanoteen
silence.
MODEAVANCÉ:
Cliquersurleboutonmodeavancédanslabarred'outilspermetdeconstruiredesprogrammesavecunétat
interne.Celapermetégalementd'utiliserdesversionsavancéesdecertainsblocsainsiquedenouveauxblocs.
Lesétatsinternes
Laréponsedurobotàunévénementpeutmaintenantdépendredesonétat.Supposonsquevousêtesun
robotavecunprogrammepourdéciderquoimangeràmidi.L'événementest«ilestmidimaintenant»;
l'actionest«mangerX».MaisXpeutdépendredelamétéo:
•
•
ilestmidimaintenantetilfaitfroid→mangerunesoupepourlerepasdemidi
ilestmidimaintenantetilfaitchaud→mangerunesaladepourlerepasdemidi
Entermedepaireévénement-action,l'actiondurobotdépendàlafoisdel'événementetdel'étatdurobot;
parexemple:
•
•
l'onclaquedesmainsetlerobotestdansl'état0→allumerlerobotenbleu
l'onclaquedesmainsetlerobotestdansl'état1→allumerlerobotenrouge
Pourdéfinirl'état,lemodeavancéamèneuneactiond'état(voiràdroite).Deplus,ilyaquatreboutons(qui
ressemblentàl'actionétat)àdroitedechaqueblocévénementdanschaquepaireévénement-action.Ces
boutonscorrespondentàquatrevariablesd'étatde1bitchacune,quipeuventdoncêtresoit0soit1.
L'étatcourantdurobotestmontrésursondessusparquatreLEDsauxquatrecoinsdesoncercledeLEDs
(chaqueLEDestéteintepour0,alluméepour1).L'actionétatpermetdedéfinirn'importequellecombinaison
decesquatrebitsàsoit1soit0.Pourl'événement,lesboutonsd'étatfonctionnentcommefiltres:
•
•
lorsqueleboutonestgris,lebitestignoré;
lorsqu'ilestorange,lebitdoitêtreà1pourquel'événements'active;
Documentréaliséparl’AtelierCanopédesYvelinesàpartirdusitewww.thymio.org
•
lorsqueleboutonestblanc,lebitdoitêtreà0pourquel'événements'active.
L'exempleci-dessousallumelerobotenrougeoubleulorsqu'ildétecteunclappementdemains,enfonction
desonétat.L'étatestdéfiniaveclesboutons:
Blocsadditionnels
Enmodeavancé,vouspouvezvoirtroisnouveauxblocs.Deuxd'entreeuxreprésententlecompteàrebours
ou"timer",unmoyendedéclencheruneactionàretardement,etunblocreprésentantl'étatinternedu
robot.
Timer
Cetévénementsedéclenchelorsquelecompteàreboursarriveàzéro.
écoulé
Timer
Cetteactionpermetdedémarreruncompteàreboursde0à4secondes,défini
parl'utilisateurencliquantsurl'horloge.Lorsquelecompteàreboursarriveàzéro,
unévénement"Timerécoulé"estdéclenché.
Documentréaliséparl’AtelierCanopédesYvelinesàpartirdusitewww.thymio.org
État
Cetteactionrèglel'étatà4bitdurobot.Grissignifielaisserlavaleuractuelle;blanc
signifiemettrel'étatà0;jaunesignifiemettrel'étatà1.
Versionsavancéesdecertainsblocs
Lesblocssuivantspossèdentdesversionsavancées.Ilssontsimilairesàleurversiondebasemaispermettent
defaireplusdechoses.
Enplusdescaractéristiquesdumodedebase,ceblocévénement
capteursdedistance permetdedétecterdesobjetsproches,maispastrop.Celaajouteune
horizontaux
zonededétection.Deplus,ilestpossiblederéglerlesseuilsde
détection(voirexempleci-dessous).
capteursdedistance Labarreduhautpermetderéglerleseuildesobjetsproches,alorsque
horizontaux
labarredubaspermetderéglerleseuildesobjetslointains.Lazone
(exemple)
entrecesdeuxseuilestlafameusezonededétectionsupplémentaire.
capteursdedistance Ceblocévénementalesmêmescaractéristiquesavancéesquelebloc
ausol
decapteursdedistancehorizontaux.
Cetévénementsedéclencheenfonctiondel'inclinaisongaucheou
Inclinaison
droitedeThymio.Pardéfaut,lesactionscorrespondantesseront
gauche/droite(tilt) lancéessilerobotestàplat.Vouspouvezréglerl'orientationen
déplaçantletriangleblancau-dessusdeThymio.
Cetévénementfonctionnedefaçonsimilaireàl'inclinaison
Inclinaison
gauche/droitemaiscettefois-cipourl'inclinaisonavantouarrièredu
avant/arrière(pitch)
robot.
Documentréaliséparl’AtelierCanopédesYvelinesàpartirdusitewww.thymio.org

Documents pareils