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