10 Missions pour apprendre à créer et programmer son robot

70
Destination Base HEXILIS Document de travail 10 Missions pour apprendre à maitriser la construction et la programmation des LEGO MINDSTORMS© EV3 23/02/2016 1 Document de travail

Transcript of 10 Missions pour apprendre à créer et programmer son robot

Page 1: 10 Missions pour apprendre à créer et programmer son robot

Destination Base HEXILIS

Document de travail

10 Missions pour apprendre à maitriser la construction et la programmation des

LEGO MINDSTORMS© EV3

23/02/2016 1Document de travail

Page 2: 10 Missions pour apprendre à créer et programmer son robot

Explorer > Combiner > Transformer

23/02/2016 2Document de travail

Page 3: 10 Missions pour apprendre à créer et programmer son robot

Mission 1

• Lister le matériel

Difficulté :

Type mission :

Aspect :

Compétences :

Contexte : avant de partir en mission, de bons agents spéciaux doivent connaitre leur matériel.

Un inventaire s’impose avant de partir en mission.

23/02/2016 3Document de travail

Objectif pédagogique : connaitre le nom des pièces et l’architecture du LEGO Mindstorms EV3.Ressources : Annexe ARésultat Livrable attendu :…

Page 4: 10 Missions pour apprendre à créer et programmer son robot

Mission 2

• Pour Choisir un châssis

– Simple et polyvalent

– Pour quel type de mission ?

• Quoi & pourquoi, Comment, Où , Quand

Difficulté :

Type mission :

Aspect :

Compétences :

• Quoi & pourquoi, Comment, Où , Quand

23/02/2016 4Document de travail

Objectif pédagogique : connaitre l’architecture d’un robot LEGO MINSTORMSRessources : Annexe BRésultat Livrable attendu :

Contexte : pour accomplir leur mission, les agents STORMs ont besoin d’un robot polyvalent

pouvant les aider dans un maximum de missions délicates.

Page 5: 10 Missions pour apprendre à créer et programmer son robot

Mission 3

• En route vers la base HEXILIS

– Contexte : nous n’avons plus de nouvelles de la base HEXILIS. Explorer la base pour savoir ce qui se passe. Y-a-t-il des survivants ?

Difficulté :

Type mission :

Aspect :

Compétences :

se passe. Y-a-t-il des survivants ?

– Étudier les plans de la base

– Algorithme des trajets…

23/02/2016 5Document de travail

Objectif pédagogique :Ressources :Résultat Livrable attendu :

Page 6: 10 Missions pour apprendre à créer et programmer son robot

Mission 4

• Aller jusqu’à la porte d’entrée (1), et revenir à la base

– Sans utiliser de capteurs tactile ou ultrason

Difficulté :

Type mission :

Aspect :

Compétences :

23/02/2016 6Document de travail

Objectif pédagogique :Ressources : Annexe C 1Résultat Livrable attendu :

Page 7: 10 Missions pour apprendre à créer et programmer son robot

Mission 5

• Aller jusqu’à la porte d’entrée (1), et revenir à la base en utilisant le capteur à ultrason.

23/02/2016 Document de travail 7

Objectif pédagogique :Ressources : Annexe C 2Résultat Livrable attendu :

Page 8: 10 Missions pour apprendre à créer et programmer son robot

Mission 6

• Suivre la ligne pour accéder à l’ordinateur de bord (2).

Difficulté :

Type mission :

Aspect :

Compétences :

23/02/2016 8Document de travail

Objectif pédagogique :Ressources :Résultat Livrable attendu :

Page 9: 10 Missions pour apprendre à créer et programmer son robot

Mission 7

• Aller dans la salle du générateur (3)

• Actionner le générateur (3)

Difficulté :

Type mission :

Aspect :

Compétences :

23/02/2016 9Document de travail

Objectif pédagogique :Ressources :Résultat Livrable attendu :

Page 10: 10 Missions pour apprendre à créer et programmer son robot

Mission 8

• Déplacer le module de transmission qui bloque le passage (4).

• Ou ramener le module de transmission à côté de l’ordinateur de bord (5).

Difficulté :

Type mission :

Aspect :

Compétences :

de l’ordinateur de bord (5).

23/02/2016 10Document de travail

Objectif pédagogique :Ressources : Annexe C 4Résultat Livrable attendu :

Page 11: 10 Missions pour apprendre à créer et programmer son robot

Mission 9

• Retourner au hangar (6)

• Neutraliser le gardien (G)

Difficulté :

Type mission :

Aspect :

Compétences :

23/02/2016 11Document de travail

Objectif pédagogique :Ressources :Résultat Livrable attendu :

Page 12: 10 Missions pour apprendre à créer et programmer son robot

Mission 10

• Accéder à la sortie pour libérer les scientifiques (S).

Difficulté :

Type mission :

Aspect :

Compétences :

23/02/2016 12Document de travail

Objectif pédagogique :Ressources :Résultat Livrable attendu :

Page 13: 10 Missions pour apprendre à créer et programmer son robot

Reste à faire• Calibrer la difficulté des missions,• Modéliser et Construire le décor, • Typer les missions :

– Mission Collecte : Objectif : collecter, trouver, lister des ressources– Mission Puzzle : Objectif : résoudre un problème– Mission Partage : Objectif : partager N ressources– Mission représentation : Objectif : jouer un comportement, représenter un système– Mission Conquête : Objectif : capture un territoire, une ressource– Mission Croissance : Objectif : Augmenter le nombre de ressources du système– Mission Tracking : Traquer et suivre le comportement d'un objet/personne/ressource et – Mission Tracking : Traquer et suivre le comportement d'un objet/personne/ressource et

comprendre son comportement– Mission Expérience : Réaliser une expérience ou trouver les résultat d'une expérience– Mission Réduction : Réduire le nombre de ressources d'un système– Mission Labyrinthe : Trouver un chemin dans un "espace"– Mission Raconte-moi une histoire : Créer une histoire– Mission Livraison : Livrer des ressources– Mission Trouver et Détruire : Trouver et corriger une erreur dans une ressource ou un objet

qui n'est pas à sa place– Mission Eclaireur : Observer, noter et rédiger un rapport– Mission Recherche : partir avec une question et revenir avec une réponse– Mission Conception : Réaliser un produit qui sera utilisé dans une autre mission– Mission Apprenti : un expert accompagne un apprenti pour lui apprendre quelque chose

23/02/2016 13Document de travail

Page 14: 10 Missions pour apprendre à créer et programmer son robot

Reste à faire• Déterminer les Aspects abordés :

– aspect : technique– aspect : matériel– aspect : composants – structure – aspect : manipulation– aspect : outils/logiciel– aspect : conception

• Lister les Compétences mise en œuvre � badges � passeport• Lister les Compétences mise en œuvre � badges � passeport– vocabulaire : Connaitre le vocabulaire LEGO & Robotique: le nom des

pièces, le nom des composants, des outils– actions : Connaitre le déplacement des objets : moteur/robot,

déplacement– réaction : Connaitre les capteurs – interaction : Savoir gérer les capteurs– SPRI : Comprendre la problématique– QQCOQP : Décomposer une problématique– EDI, Environnement : Connaitre un environnement de travail : EV3,

Scratch,23/02/2016 14Document de travail

Page 15: 10 Missions pour apprendre à créer et programmer son robot

FE

SC

An

ne

xe

-

Ba

se H

EX

ILISM

ission

1 : C

om

pre

nd

re le

s LEG

O M

ind

storm

sZ

EX

99

63

-A-D

estin

atio

n

Ba

se H

EX

ILIS

Co

mp

ren

dre

les LE

GO

Min

dsto

rms

16

De

stina

tion

Co

mp

ren

dre

les LE

GO

Min

dsto

rms

Page 16: 10 Missions pour apprendre à créer et programmer son robot

Lego Mindstorm

s E

V3

Pa

ge

2 su

r 10

P

rése

nta

tion

du

ma

térie

l

O

n distingue 3 composants principaux:

• la brique E

V3

• les m

oteurs

• les capteurs

Ce sont ces com

posants qui permettront aux robots que tu vas construire d’agir et de

réagir. Mo

teu

r

Mo

ye

n

Gro

s

Mo

teu

rs

Ca

pte

ur

tactile

Ca

pte

ur

gy

rosco

piq

ue

Ca

pte

ur d

e

cou

leu

rs

Ca

pte

ur d

e

dista

nce

Page 17: 10 Missions pour apprendre à créer et programmer son robot

Lego Mindstorm

s E

V3

Pa

ge

3 su

r 10

L

a b

riqu

e E

V3

C

aractéristiques techniques de la brique EV

3

Systèm

e d'exploitation : LIN

UX

P

rocesseur : A

RM

9 300 MH

z M

émoire flash :

16 Mo

Mém

oire vive : 64 M

o R

ésolution de l'écran : 178x128/noir &

blanc La

brique est

l’ordinateur qui

comm

ande le

robot. Les

moteurs

et les

capteurs s’y

connectent. P

résentation des boutons

Un

écran perm

et de

visualiser les

informations

et son

état (program

me

en cours,

allumage, extinction...) et plusieurs boutons perm

ettent de sélectionner les programm

es ou les fonctions.

Page 18: 10 Missions pour apprendre à créer et programmer son robot

Lego Mindstorm

s E

V3

Pa

ge

4 su

r 10

P

rése

nta

tion

de

s lum

ière

s d’é

tat

Le témoin lum

ineux d'état de la brique qui entoure les boutons indique l'état actuel de la brique E

V3. Il peut être vert, orange ou rouge et il peut clignoter. V

oici les codes du témoin

d'état de la brique:

Rouge:

démarrage, m

ise à jour, arrêt R

ouge clignotant: occupé

Orange:

alerte, prêt O

range clignotant: alerte, en cours d'exécution

V

ert: prêt

Vert clignotant:

programm

e en cours d'exécution M

ise en marche de la brique E

V3

P

our allumer la brique E

V3, appuie sur le bouton central

. P

endant le démarrage, le bouton devient rouge. Lorsque le

bouton est vert, la brique est prête à être utilisée. P

our éteindre la brique EV

3, appuie sur le bouton Retour

jusqu'à ce que l'écran d'extinction s’affiche. L'option d'annulation X

est déjà sélectionnée. Appuie sur le

bouton droit pour sélectionner l'option de confirm

ation, puis appuie sur le bouton central

pour confirmer.

La brique s’éteint automatiquem

ent si elle n’est pas utilisée durant un tem

ps déterminé (par défaut: 30 m

in).

Page 19: 10 Missions pour apprendre à créer et programmer son robot

Lego Mindstorm

s E

V3

Pa

ge

5 su

r 10

P

rése

nta

tion

de

s co

nn

ec

teu

rs

Les moteurs se branchent toujours sur les ports A

, B, C

et D.

Les capteurs se branchent toujours sur les ports 1, 2, 3 et 4.

Attention! Les fiches sont fragiles!

Page 20: 10 Missions pour apprendre à créer et programmer son robot

Lego Mindstorm

s E

V3

Pa

ge

6 su

r 10

L

es m

ote

urs E

V3

Les m

oteurs EV

3 sont à la fois des moteurs et des capteurs. Ils sont en effet équipés de

capteurs de rotation précis au degré près. Par exem

ple, il est possible de programm

er une rotation de 48°.

Le Mindstorm

s EV

3 est équipé de 3 moteurs: deux grands m

oteurs et un moteur m

oyen. G

rands moteur

Le grand m

oteur est un moteur plus puissant, m

ais moins

rapide. Il sera utilisé en priorité pour le déplacement des

robots. Le grand m

oteur tourne à un régime de 160-170 tours par

minute (tpm

), avec un couple en rotation de 20 newtons-

centimètres (N

cm) et un couple de blocage de 40 N

cm.

Pour sim

plifier, le couple est l’effort que le moteur est capable de fournir en rotation autour

d’un axe. C’est donc la force que le m

oteur est capable de donner dans son mouvem

ent. P

ar exemple, lorsqu’un cycliste appuie davantage sur les pédales pour m

onter une côte ou pour accélérer, il développe davantage de couple.

Moteur m

oyen

Le moteur m

oyen est un moteur m

oins puissant, mais plus

rapide. Il est aussi plus léger. Il sera utilisé lorsqu’on aura besoin d’une réaction plus rapide qu’avec le gros m

oteur. Le m

oteur moyen tourne à un régim

e de 240-250 tpm, avec

un couple en rotation de 8 Ncm

et un couple de blocage de 12 N

cm.

Note: il n’existe pas de petit m

oteur.

Page 21: 10 Missions pour apprendre à créer et programmer son robot

Lego Mindstorm

s E

V3

10

Le

s ca

pte

urs E

V3

Le capteur de couleurs

Le

capteur de

couleur peut

détecter les

couleurs ou

l'intensité de

la lum

ière. T

rois m

odes d'utilisation

sont disponibles:

C

ouleur Intensité de la lum

ière réfléchie Intensité lum

ineuse ambiante.

En m

ode Couleur, le capteur reconnaît sept couleurs (noir,

bleu, vert, rouge, jaune, blanc et marron).

En m

ode Intensité de la lumière réfléchie, le capteur m

esure l'intensité de la lum

ière réfléchie en émettant une lum

ière rouge. Le capteur utilise une échelle allant de 0 (très som

bre) à 100 (très clair). E

n m

ode Intensité

lumineuse

ambiante,

le capteur

mesure

l'intensité de

la lum

ière am

biante (p. ex. la lumière du jour ou le faisceau d'une lam

pe torche) qui pénètre par la fenêtre. Le capteur utilise une échelle allant de 0 (très som

bre) à 100 (très lumineux).

Tu peux utiliser le capteur de couleur pour suivre une ligne au sol, ou pour trier des boules

de couleurs. C

onseil d’utilisation: place le capteur perpendiculairem

ent à la surface à mesurer.

Le capteur tactile

Le capteur tactile est un capteur analogique qui détecte quand son bouton rouge est enfoncé et relâché. Il peut être program

pour définir

une action

en utilisant

trois possibilités:

Enfoncé

• R

elâché •

Heurté (enfoncé puis relâché)

Tu peux utiliser le capteur tactile com

me un interrupteur, ou

pour arrêter le robot quand il rencontre un obstacle

Page 22: 10 Missions pour apprendre à créer et programmer son robot

Lego Mindstorm

s E

V3

11

Le capteur gyroscopique Le capteur gyroscopique détecte le m

ouvement de rotation

sur un

seul axe.

Quand

vous faites

tourner le

capteur gyroscopique dans le sens des flèches (sur le boîtier du capteur), le capteur détecte la vitesse de rotation en degrés par

seconde (la

vitesse m

aximale

que le

capteur peut

mesurer est de 440 degrés par seconde). Il m

émorise aussi

l'angle de rotation total en degrés.

Tu

peux donc

utiliser ce

capteur pour détecter si une pièce est en m

ouvement. T

u peux aussi l’utiliser pour faire tourner le robot sur lui- m

ême

jusqu’à ce

qu’il atteigne

la valeur voulue; par exem

ple 90°. La précision est de +

/- 3 degrés. C

onseil d’utilisation: le capteur ne doit pas bouger lorsqu’il est connecté à la brique E

V3.

Le capteur à ultrasons

Le capteur à ultrasons mesure la distance des objets se

trouvant devant

lui. Il

émet

des ondes

sonores à

haute fréquence et m

esure le temps qu'il faut au son pour être

réfléchi et

revenir au

capteur. Les

chauves-souris et

les dauphins

utilisent la

mêm

e m

éthode pour

chasser. C

’est l’écholocalisation.

Le capteur peut mesurer une distance com

prise entre 3 et 250 centim

ètres (avec une précision de +/-1 cm

). Le témoin

allumé autour de l’œ

il du capteur indique que le capteur est en m

ode Mesure. Le tém

oin clignotant indique que le capteur est en m

ode Présence.

En m

ode Présence, le capteur peut détecter un autre capteur à ultrasons qui fonctionne à

proximité; le capteur détecte les signaux sonores, m

ais il n'en émet pas, com

me le sonar

d’un sous-marin.

Tu peux utiliser le capteur à ultrasons pour éviter des obstacles, suivre une cible m

obile ou détecter un m

ouvement.

Page 23: 10 Missions pour apprendre à créer et programmer son robot

Lego Mindstorm

s E

V3

12

Les pièces Il est im

portant d’avoir un vocabulaire comm

un pour se comprendre, en particulier pour

nomm

er les nombreuses pièces qui constituent le M

indstorms E

V3.

Beaucoup de pièces (barres, axes...) existent dans des longueurs différentes. L’unité de

m

esure s’appelle le module (abrégée M

) et correspond à une pièce de 1x1. E

xemples: brique 1x1M

(rouge) et brique 1x2M (jaune)

Voici les principales fam

illes de pièces:

Les bagues

Les chevilles

Les connecteurs

Les axes

Les poutres

Les briques

Les barres perforées

Les roues dentées et engrenages

Page 24: 10 Missions pour apprendre à créer et programmer son robot

Lego Mindstorms EV3

Chevilles

Les roues dentées et

engrenages

Les poutres droites

Les bagues

Les axes

Les poutres

coudées

Les connecteurs

Chevilles

longues

Chevilles

axés

Page 25: 10 Missions pour apprendre à créer et programmer son robot

FE

SC

An

ne

xe

-

Ba

se H

EX

ILISM

ission

2 : C

om

pre

nd

re l’a

rchite

cture

d’u

n

rob

ot LE

GO

Min

dsto

rms

ZE

X9

96

3

-B-D

estin

atio

n

Ba

se H

EX

ILIS

: Co

mp

ren

dre

l’arch

itectu

re d

’un

rob

ot LE

GO

Min

dsto

rms

16

De

stina

tion

: Co

mp

ren

dre

l’arch

itectu

re d

’un

Page 26: 10 Missions pour apprendre à créer et programmer son robot
Page 27: 10 Missions pour apprendre à créer et programmer son robot
Page 28: 10 Missions pour apprendre à créer et programmer son robot
Page 29: 10 Missions pour apprendre à créer et programmer son robot
Page 30: 10 Missions pour apprendre à créer et programmer son robot
Page 31: 10 Missions pour apprendre à créer et programmer son robot
Page 32: 10 Missions pour apprendre à créer et programmer son robot
Page 33: 10 Missions pour apprendre à créer et programmer son robot
Page 34: 10 Missions pour apprendre à créer et programmer son robot

A

ccessoire Capteur à U

ltrasons

Page 35: 10 Missions pour apprendre à créer et programmer son robot
Page 36: 10 Missions pour apprendre à créer et programmer son robot
Page 37: 10 Missions pour apprendre à créer et programmer son robot
Page 38: 10 Missions pour apprendre à créer et programmer son robot
Page 39: 10 Missions pour apprendre à créer et programmer son robot
Page 40: 10 Missions pour apprendre à créer et programmer son robot
Page 41: 10 Missions pour apprendre à créer et programmer son robot
Page 42: 10 Missions pour apprendre à créer et programmer son robot
Page 43: 10 Missions pour apprendre à créer et programmer son robot
Page 44: 10 Missions pour apprendre à créer et programmer son robot
Page 45: 10 Missions pour apprendre à créer et programmer son robot
Page 46: 10 Missions pour apprendre à créer et programmer son robot
Page 47: 10 Missions pour apprendre à créer et programmer son robot
Page 48: 10 Missions pour apprendre à créer et programmer son robot
Page 49: 10 Missions pour apprendre à créer et programmer son robot

An

ne

xe

-

Ba

se H

EX

ILISA

nn

ex

es d

es M

ission

s

-C-D

estin

atio

n

Ba

se H

EX

ILIS

An

ne

xe

s de

s Missio

ns 3

, 5, 7

& 8

16

De

stina

tion

Page 50: 10 Missions pour apprendre à créer et programmer son robot

Pa

ge

2 su

r 22

Page 51: 10 Missions pour apprendre à créer et programmer son robot

Pa

ge

3 su

r 22

An

nexe C

1 : M

ission

3

V

ue d'ensemble: construire un robot qui est capable de naviguer autour d'un parcours

d’obstacles.

Projet: V

otre équipe ST

OR

M est à la recherche d’un nouveau

robot d’intervention multifonction. V

ous devez construire et tester un robot qui est capable de suivre un ensem

ble de comm

andes pour explorer votre zone d’intervention. A

vant que le robot ne soit déployé,

il doit

être testé

en profondeur

pour vérifier

qu'il fonctionnera com

me prévu. V

ous ne pouvez pas envoyer un S

torm sur zone pour redém

arrer le robot! M

até

riel re

qu

is

• 1 E

V3 robot en kit par groupe

• 1 ordinateur par groupe

• D

u ruban adhésif de masquage et un m

ètre ruban C

on

seils p

ou

r l’an

imate

ur

Cette section portera sur les sujets suivants, entre autres

• Le calcul élém

entaire •

Les nombres décim

aux et les fractions •

La relation entre le diamètre et la circonférence

• La conversion entre m

illimètres et pouces

Lors d

e la missio

n 2

, les app

rentis ro

bo

ticiens o

nt co

nstru

it le rob

ot R

ileyRo

ver en su

ivant les in

structio

ns d

e co

nstru

ction

. Lo

rs de la m

ission

3, ils o

nt an

ticipé les trajets à p

révoir p

ou

r accéder au

x différen

ts po

ints d

’accès.

Po

ur la m

ission

4, ils vo

nt d

evoir p

rend

re con

naissan

ce des in

structio

ns à d

on

ner au

rob

ot.

Le lo

gicie

l EV

3

Po

ur effectu

er la pro

gramm

ation

, no

us au

ron

s beso

in d

e bien

con

naître le b

loc «

Dép

lacemen

t et directio

qu

i se tro

uve d

ans la p

alette des b

locs d

'action

(verte). La figu

re ci-desso

us m

on

tre le blo

c Déplacem

ent et direction

en so

ulign

ant les d

ifférentes en

trées du

blo

c.

Page 52: 10 Missions pour apprendre à créer et programmer son robot

Page 4

sur 2

2 Le b

loc D

ép

lace

me

nt e

t dire

ction

disp

ose d

e plu

sieurs p

arties différen

tes com

me illu

stré ci-desso

us.

Le Sé

lecte

ur d

e P

ort id

entifie les p

orts au

xqu

els les mo

teurs so

nt co

nn

ectés. Si vo

us u

tilisez le mo

dèle R

ileyRo

ver, assu

rez-vou

s qu

e le mo

teur gau

che est co

nn

ecté au p

ort B

et qu

e le mo

teur d

roit est co

nn

ecté au p

ort C

(câbles

en cro

isé). Si ce n’est p

as fait correctem

ent, alo

rs no

tre rob

ot va to

urn

er à gauch

e qu

and

no

us lu

i diso

ns d

e to

urn

er à dro

ite et vice versa. Le sé

lecte

ur d

e m

od

e sélectio

nn

e la façon

do

nt vo

us so

uh

aitez con

trôler la d

urée d

e rotatio

n d

es rou

es : activé, d

ésactivé, activé pen

dan

t un

certain n

om

bre d

e secon

des, activé p

end

ant u

ne ro

tation

d’u

n certain

no

mb

re de

degrés o

u d

’un

certain n

om

bre d

e rotatio

ns.

L

es e

ntré

es d

es b

locs

Les en

trées des b

locs ch

angen

t en fo

nctio

n d

u m

od

e qu

i a été cho

isi.

Direction:

Vo

us p

ou

ve

z soit e

ntre

r un

e v

ale

ur, so

it faire

glisse

r le cu

rseu

r. « 0

» sig

nifie

tou

t dro

it, « -1

00

» sig

nifie

tou

rne

r à g

au

che

de

faço

n se

rrée

et «

10

0 »

tou

rne

r à d

roite

de

faço

n se

rrée

. Les v

ale

urs e

ntre

ces lim

ites v

ou

s do

nn

ero

nt d

ive

rs vira

ge

s, de

s vira

ge

s très

pro

gre

ssifs jusq

u'à

de

s vira

ge

s très se

rrés.

Puissance:

Là e

nco

re, v

ou

s po

uv

ez sa

isir un

nu

ro o

u fa

ire g

lisser le

curse

ur. «

10

0 »

sign

ifie «

au

ssi vite

qu

e p

ossib

le e

n a

va

nt »

, « -1

00

» sig

nifie

« a

ussi v

ite q

ue

po

ssible

en

arriè

re »

et «

0 »

sign

ifie p

uissa

nce

nu

lle (e

ffectiv

em

en

t un

arrê

t). De

s va

leu

rs en

tre ce

s

limite

s fero

nt d

ép

lace

r le ro

bo

t à d

es v

itesse

s diffé

ren

tes e

n a

va

nt o

u e

n a

rrière

.

Rotations / degrés / secondes :

Ce

tte e

ntré

e (v

isible

selo

n le

mo

de

cho

isi) dé

term

ine

da

ns q

ue

lle m

esu

re le

s rou

es d

u ro

bo

t vo

nt to

urn

er. P

ar e

xe

mp

le «

2 »

en

mo

de

«

rota

tion

s » fe

ra to

urn

er le

s rou

es d

u ro

bo

t de

de

ux

rota

tion

s, « 4

,5 »

en

mo

de

« se

con

de

s

» fe

ra to

urn

er le

s rou

es d

u ro

bo

t pe

nd

an

t qu

atre

seco

nd

es e

t de

mie

.

Page 53: 10 Missions pour apprendre à créer et programmer son robot

Page 5

sur 2

2

Freiner à la fin:

Qu

an

d le

rob

ot a

term

iné

son

mo

uv

em

en

t, il pe

ut so

it ap

pliq

ue

r

imm

éd

iate

me

nt le

s frein

s po

ur le

s mo

teu

rs (VR

AI) so

it laisse

r les m

ote

urs e

n ro

ue

libre

(FA

UX

).

Ch

oisisso

ns le m

od

e Activ

é p

en

da

nt (ro

tatio

ns) p

ou

r le mo

men

t. Avec ce m

od

e sélection

né, n

ou

s po

uvo

ns

main

tenan

t con

figurer les d

ifférentes en

trées de b

locs p

ou

r po

uvo

ir répo

nd

re à la prem

ière qu

estion

sur la fich

e d

e travail de l'ap

pren

ti rob

oticien

: Avan

cer de 2

rotatio

ns.

Si tou

t se passe co

mm

e prévu

, les rou

es de vo

tre rob

ot d

evraient to

urn

er d’exactemen

t deu

x rotatio

ns.

Pou

r la m

ission

4:

Avancer de 2 rotations

= 352m

m ou 13,9 pouces (si vous utilisez les roues fournies

avec le EV

3)

Avancer de 2 degrés

= 1m

m. A

lors que le robot va à peine se déplacer, l’apprenti roboticiens devraient voir les m

oteurs « sursauter » un tout petit peu.

Page 54: 10 Missions pour apprendre à créer et programmer son robot

Page 6

sur 2

2

Avancer pendant 2 secondes.

Le déplacement du robot dépend de la puissance

choisie. Deux secondes vers l’avant avec une puissance de 20%

vont faire avancer le robot m

oins loin que deux secondes vers l’avant avec une puissance de 100%.

Jusqu'où ira le robot si les roues tournent de 3 ro

tations? P

our répondre à cette question, nous devons prendre des m

esures pour déterminer les caractéristiques du

mouvem

ent du robot. C'est une bonne occasion de renforcer ou introduire la relation

entre le rayon d'une roue et sa circonférence.

Calculer la circonférence peut se faire soit m

athématiquem

ent soit expérimentalem

ent en fonction de la capacité des apprentis roboticiens.

Expérim

entalement:

Enlever u

ne ro

ue d

u ro

bo

t et faire un

e marq

ue su

r le pn

eu so

it avec un

e craie soit avec

du

rub

an ad

hésif. C

réer un

e marq

ue d

e dép

art sur la tab

le et aligner la m

arqu

e du

pn

eu avec elle. M

ainten

ant,

rou

ler lentem

ent la ro

ue ju

squ

'à ce qu

e la marq

ue d

e pn

eu to

uch

e le sol. Faire u

ne au

tre marq

ue à cet en

dro

it et u

tiliser un

e règle po

ur m

esurer la d

istance.

Ma

thé

ma

tiqu

em

en

t: La circon

férence d

'un

e rou

e peu

t être calculée en

utilisan

t le form

ule: c = π

× d o

ù c =

circon

férence, π

= 3,14 (en

viron

) et d est le d

iamètre d

e la rou

e. La ro

ue q

ui fait p

artie de l’en

semb

le stand

ard EV

3 a u

n d

iamètre d

e 56m

m (2

,2 p

ou

ces), ce qu

i corresp

on

d à u

ne

circon

férence d

'enviro

n 176

mm

(6,9

po

uces).

Cela sign

ifie qu

e po

ur u

ne ro

tation

com

plète, le ro

bo

t avancera d

e 176m

m (6

,9 p

ou

ces). Étant d

on

né q

u’u

ne

rotatio

n co

mp

lète fait 360

degrés, o

n p

eut calcu

ler qu

e 1 d

egré de ro

tation

de la ro

ue fera avan

cer le rob

ot d

e 0

,49mm

.

P

our 3 rotations, le robot avancera de 528mm

(20,8 pouces).

Circonférence

Page 55: 10 Missions pour apprendre à créer et programmer son robot

Page 7

sur 2

2

Faire avancer le robot lentem

ent de 5 rotations, puis le faire reculer de 1800 degrés aussi

vite que possible. E

ncourager les apprentis roboticiens à calculer la correspondance entre 1800 degrés et la distance parcourue (1800/360 =

5 rotations). Ils doivent donc constater que le robot se retrouve exactem

ent là où il a comm

encé.

Faire

tou

rner v

otre

rob

ot

Qu

and

on

dem

and

e aux ap

pren

tis rob

oticien

s de faire to

urn

er leurs ro

bo

ts auto

ur d

'un

cercle com

plet (3

60

degrés), b

eauco

up

d’en

tre eux vo

nt sim

plem

ent tap

er 360

degrés avan

t d’exécu

ter le pro

gramm

e. Lorsq

u'il est

exécuté, cep

end

ant, s'ils u

tilisent le R

ileyRo

ver, ils von

t con

stater qu

e leur ro

bo

t ne to

urn

e pas d

e 360 d

egrés, m

ais en réalité b

eauco

up

mo

ins.

Cela se p

rod

uit p

arce qu

e le blo

c Dé

pla

cem

en

t et d

irectio

n est co

nçu

po

ur co

ntrô

ler la rou

e d

u ro

bo

t, et no

n

l'en

sem

ble

du

rob

ot. Si n

ou

s ob

servon

s la rou

e, no

us co

nstatero

ns q

u'elle a effectivem

ent to

urn

é d’exactem

ent

360

degrés, to

ut co

mm

e on

lui a d

it de le faire. L'an

gle de ro

tation

du

rob

ot d

épen

d d

e plu

sieurs facteu

rs do

nt la

taille des ro

ues et la d

istance en

tre les rou

es. P

ou

r trou

ver la du

rée requ

ise po

ur faire to

urn

er le rob

ot d

e 360 d

egrés il est préférab

le de faire d

es expérien

ces. C

haq

ue co

ncep

tion

du

rob

ot est légèrem

ent d

ifférente, d

e sorte q

ue le n

om

bre d

e degrés n

écessaires po

ur faire

tou

rner co

mp

lètemen

t un

rob

ot p

eut varier co

nsid

érablem

ent, m

ême avec d

es rob

ots q

ui se ressem

blen

t b

eauco

up

.

Pou

r la m

ission

4 :

Conseil pour faire tourner votre robot autour d'un

cercle complet (360 degrés).

Continuez à augm

enter le paramètre D

égrées des roues jusqu'à ce que le robot tourne

de 360

degrés. U

n virage

serré avec

l’entre «

direction »

du bloc

Déplacem

ent et

direction réglée

soit à

gauche (-100)

soit à

droite (100)

est

nécessaire. Les apprentis roboticiens peuvent effectuer des essais avec des valeurs

A

STU

CE

: Le ra

yon d

e b

raquage d

u ro

bot e

st d

éfin

i par le

poin

t où le

s roues to

uch

ent le

sol. C

om

pte

tenu d

u fa

it que l'E

V3 a

des ro

ues la

rges, il e

st diffic

ile d

e d

éte

rmin

er

exacte

ment o

ù s

e tro

uve le

centre

de c

onta

ct avec le

sol. L

es ro

bots lo

urd

s (ou m

al

constru

its) p

euvent ca

user u

ne lé

gère

défo

rmatio

n d

es ro

ues d

épla

çant le

centre

de

conta

ct un p

eu p

lus p

rès d

u centre

.

Page 56: 10 Missions pour apprendre à créer et programmer son robot

Page 8

sur 2

2

différentes jusqu'à ce qu'ils trouvent une solution acceptable.

Pour tester, placez une longueur de ruban sur le sol. D

émarrez le robot avec les

deux roues sur la bande. Après une rotation parfaite (360°) du robot les deux roues

doivent se retrouver sur la bande.

Pour le R

ileyRover, avec des piles neuves, sur une surface lisse, un angle de 785

degrés d'un virage serré donne un virage du robot d’exactement 360 degrés. L’angle

nécessaire pour votre robot peut varier un peu, mais devrait être proche de 785°.

Faire avancer de 500m

m, tourner de 180 degrés et re

tourner au point de départ.

Poser deux bandes de ruban espacées de 500m

m com

me distance d'essai.

La durée nécessaire pour avancer de 500mm

peut être calculée en divisant 500mm

par la circonférence de la roue (176m

m).

X =

50

0 /

17

6

X =

2,8

4 ro

tatio

ns O

U

2,9

0 ro

tatio

ns

E

n utilisant de l'angle de braquage découvert ci-dessus, les apprentis roboticiens peuvent faire un calcul approxim

atif de ce qui est nécessaire pour faire un virage de 180 degrés. P

our la RileyR

over, sur une surface plane, les roues doivent tourner d’environ 390 degrés (785/2) pour effectuer un virage précis de 180 degrés.

Page 57: 10 Missions pour apprendre à créer et programmer son robot

Page 9

sur 2

2 A

nn

exe C

2 : M

ission

5

Vue d’ensem

ble : Équiper votre robot avec un capteur pour l’aider à détecter les obstacles.

Projet : P

our explorer votre zone d’intervention, votre robot rencontrera sans doute des obstacles sur son chem

in. Les responsables de l’Agence S

TO

RM

demande que vous dém

ontriez la capacité de votre robot de détecter des obstacles et de les éviter. Il est im

portant que votre robot ne touche aucun de ces obstacles car nous ne voulons pas abîm

er le robot ni contaminer

l’environnement de notre recherche.

Éq

uip

em

en

t req

uis

• 1 ensem

ble robot EV

3 par groupe •

1 ordinateur par groupe

Connecter l’accessoire C

apteur à Ultrasons à l’avant du robot et assurez-vous que le

câble soit bien connecté. Pour ce chapitre nous allons connecter le capteur à ultrasons

au port 4.

Page 58: 10 Missions pour apprendre à créer et programmer son robot

Page 1

0 sur 2

2

Th

éo

rie

Le capteur à ultrasons utilise la gamm

e des ultrasons pour déterminer la distance par

rapport à un objet. Les capteurs à ultrasons, ou SO

NA

R (S

Ound N

avigation And

Ranging) ém

ettent une onde sonore de très haute fréquence à partir de l’une des deux ouvertures dans le capteur. C

ette onde sonore est typiquement de 40 kH

z, bien supérieur à ce qu’une oreille hum

aine peut détecter. Cette onde sonore voyage à

travers l’air et est réfléchie par un objet avec l’écho retournant vers l’autre ouverture du capteur. E

n mesurant le tem

ps nécessaire pour que le son fasse l’aller-retour, le capteur peut calculer l’éloignem

ent de l’objet.

Le capteur à ultrasons peut calculer la distance le séparant d'un objet en

mesurant la durée nécessaire pour que des ondes son

ores réfléchies reviennent au capteur.

La valeur que le capteur à ultrasons enverra dépend de la surface à partir de laquelle une onde sonore a été réfléchie. Les surfaces lisses et perpendiculaires donnent des résultats précis m

ais les surfaces irrégulières (telles que des mains, d’autres robots,

des m

urs non-perpendiculaires

etc.) peuvent

donner des

résultats différents.

L’important ici est donc de faire beaucoup d’essais. S

achez que quand le capteur est très près du sol, des surfaces extrêm

ement rugueuses peuvent déclencher le capteur

de façon inattendue.

Con

seils p

ou

r l’an

imate

ur

La p

rem

ière

éta

pe

de

ce d

éfi e

t de

tecte

r un

ob

stacle

et d

e s’a

rrête

r. Da

ns ce

cas, n

ou

s

ne

vo

ulo

ns p

as d

ire a

ux

rou

es d

u ro

bo

t qu

elle

dista

nce

elle

s do

ive

nt p

arco

urir. A

va

nce

r de

5 ro

tatio

ns, p

ar e

xe

mp

le, n

e n

ou

s aid

era

pa

s si l’ob

jet e

st à 1

0 ro

tatio

ns d

ev

an

t no

us. C

e

sera

it dé

sastre

ux

qu

e si l’o

bje

t éta

it à se

ule

me

nt 2

rota

tion

s !

Il est facultatif d’utiliser un organigramm

e pour planifier ce que le robot va faire.

Com

mencer à avancer

Attendre que l’obstacle soit détecté

Arrêter les m

oteurs

Page 59: 10 Missions pour apprendre à créer et programmer son robot

Page 1

1 sur 2

2 C

ette approche

utilisera toujours

le bloc

Déplacem

ent et

Direction, m

ais plutôt que choisir un des modes S

econdes, D

egrés ou Rotations, nous utiliserons le m

ode Activé. C

eci enclenchera les m

oteurs et lancera le bloc de programm

ation suivant. Les m

oteurs continueront à tourner jusqu’à ce qu’un autre

bloc D

éplacement

et D

irection leur

dise de

faire autrem

ent. L

e b

loc A

tten

dre

Le bloc suivant dira au robot d’attendre jusqu’à ce qu’un obstacle ait été détecté. On fait

cela avec le bloc Attendre

. Le bloc Attendre peut être configuré pour attendre pendant une

durée spécifique où attendre jusqu’à ce qu’une condition ait été observée avec un capteur. D

ans ce cas nous utiliserons le mode C

apteur à Ultrasons.

C

omparer et C

hangement

Chaque m

ode de capteur dans le bloc Attendre vous donne les options « C

omparer » et «

Changem

ent ». Chaque option est différente et a une utilité spécifique.

• C

omparer :

ce mode prend la valeur et la com

pare avec une valeur spécifique, par exem

ple : attendre que la distance soit inférieure à 100 cm.

• C

hangement :

ce mode ne cherche pas un nom

bre spécifique, mais plutôt un

changement spécifique. P

ar exemple, attendre que la distance soit 50 cm

plus près que quand il a com

mencé. C

ela peut signifier que le robot comm

ence, par exem

ple, à 200 cm et puis se rapproche de 50 cm

, pour finir à 150 cm.

Page 60: 10 Missions pour apprendre à créer et programmer son robot

Page 1

2 sur 2

2

Nous allons utiliser le m

ode « comparer » com

me nous avons besoin de savoir

exactement à quelle distance nous som

mes de l’objet.

Pour finir de préparer le bloc, nous allons le configurer pour qu’il attende jusqu’à ce

que la valeur envoyée par le capteur à ultrasons passe en dessous de 10 cm. D

ans ce cas nous pourrions choisir ou bien « inférieur à » ou bien « inférieur ou égal à ».

Nous avons presque fini ! P

our le mom

ent le robot comm

ence à rouler et continue à rouler

jusqu’à ce

qu’il détecte

un objet

à m

oins de

10 cm

. S

i nous

laissons le

programm

e tel quel le robot saura qu’il y a un autre objet mais sans lui dire ce que les

moteurs doivent faire il le heurtera. N

otre dernier bloc dira aux moteurs de s’arrêter.

Le p

rog

ram

me

com

ple

t

Page 61: 10 Missions pour apprendre à créer et programmer son robot

Page 1

3 sur 2

2

Astuce

: pour beaucoup d’applications robotiques, nous préférons éviter l’option « égal ». Il est rare, surtout avec des capteurs, qu’une valeur corresponde exactem

ent à nos exigences. Im

aginons que notre robot aille très vite ; que le capteur envoie une valeur de 11 cm, et que la

prochaine valeur envoyée par le capteur soit de 9 cm. C

omm

e le capteur n’envoie jamais une

valeur d’exactement 10 cm

, le robot ne s’arrêtera pas.

Le d

éfi su

ivan

t M

aintenant que notre robot a détecté l’obstacle, il aura besoin de s’en éloigner. À nouveau

nous utiliserons un organigramm

e pour mieux voir com

ment accom

plir cela.

En utilisant le bloc B

oucle que nous avons découvert plus tôt, nous pouvons créer un

programm

e qui évitera le mur, et répéter ces instructions à tout jam

ais. A

tten

tion

! Les apprentis roboticiens doivent aussi se rappeler que la distance m

esurée par le capteur est m

esurée à partir de l’avant du capteur qui ne coïncide pas nécessairement avec l’avant

du robot. Faites particulièrem

ent attention à toute accessoire ou partie du robot qui se trouve

Com

mencer à avancer

Attendre que l’obstacle soit détecté

Arrêter les m

oteurs

Reculer un peu

Tourner un peu

Page 62: 10 Missions pour apprendre à créer et programmer son robot

Page 1

4 sur 2

2

devant le capteur.

Les apprentis roboticiens peuvent trouver que les valeurs ne correspondent pas à ce qu’ils sont capables de m

esurer avec une règle. Ceci est le résultat de l’onde ultrasonique qui se

reflète de l’objet visé sous des angles inhabituels.

Page 63: 10 Missions pour apprendre à créer et programmer son robot

Page 1

5 sur 2

2

An

nexe C

3: M

ission

7

V

ue d'ensemble: U

tiliser un accessoire de livraison de charge pour livrer ou actionner un objet à des endroits précis.

Projet: V

ous devez savoir mettre en œ

uvre un actionneur pour déclencher un « interrupteur » ou bien ram

asser ou déposer un objet à un endroit précis.

Maté

riel R

eq

uis

• 1 ensem

ble robot EV

3 par groupe •

1 ordinateur par groupe •

Livres épais qui serviront de petits plateaux

Con

seils p

ou

r l’an

imate

ur

…..

Page 64: 10 Missions pour apprendre à créer et programmer son robot

Page 1

6 sur 2

2

Page 65: 10 Missions pour apprendre à créer et programmer son robot

Page 1

7 sur 2

2

Dem

andez aux apprentis roboticiens de fabriquer l’accessoire de livraison de charge et de le connecter à l'avant du robot. C

onnectez également l’accessoire du capteur à

ultrasons qui devrait s'intégrer parfaitement sous l’accessoire de livraison de charge.

Les exemples de program

mes de ce chapitre utilisent une configuration avec le

moteur m

oyen connecté au port D et le capteur d'ultrasons relié au port 1. U

n organigram

me de la façon dont ce problèm

e pourrait être abordé est la suivante :

La plupart de ces tâches peut être réalisé en utilisant des blocs de programm

ation que nous avons rencontrés dans les chapitres précédents. N

ous avons portant besoin d’utiliser

un nouveau

bloc pour

activer l’accessoire

de livraison

de charge.

L’accessoire de livraison de charge utilise le moteur m

oyen qui dispose de son propre bloc

de program

mation.

Le bloc

Moteur m

oyen fonctionne

presque exactem

ent com

me le bloc D

éplacement et direction

, mais sans la partie « direction ». Le

moteur m

oyen est configuré de telle sorte qu’un niveau de puissance positive fera tourner le m

oteur dans le sens horaire et une puissance négative fera tourner le m

oteur dans le sens contraire. Pour l’accessoire de livraison de charge, lever le bras

est un mouvem

ent positif alors que l'abaissement du bras est un m

ouvement négatif.

Une rotation d’environ 90 degrés est nécessaire pour soulever et pour abaisser

complètem

ent le bras.

Com

mencer à tourner lentem

ent A

rrêter les moteurs

Attendre qu’un autre objet soit détecté

Baisser le bras

Com

mencer à avancer lentem

ent Lever le bras

Attendre que l’objet soit à m

oins de 5cm

du robot R

eculer

Page 66: 10 Missions pour apprendre à créer et programmer son robot

Page 1

8 sur 2

2

Com

me le bloc M

oteur moyen

peut accepter une puissance aussi bien négative que

positive ainsi qu’une rotation aussi bien négative que positive, il y a deux façons de soulever et d’abaisser la barre, com

me indiqué ci-dessous. Les deux façons sont tout

aussi efficaces.

Exem

ple

de P

rog

ram

me

Page 67: 10 Missions pour apprendre à créer et programmer son robot

Page 1

9 sur 2

2

Page 68: 10 Missions pour apprendre à créer et programmer son robot

Page 2

0 sur 2

2

An

nexe C

4: M

ission

8

Vue d'ensem

ble: Utiliser l’accessoire pince pour déplacer des objets.

Projet: D

ivers obstacles peuvent se trouver sur le parcours de votre robot. Utilisez votre robot et

un accessoire approprié pour dégager la zone.

Maté

riel R

eq

uis

• 1 ensem

ble robot EV

3 par groupe •

1 ordinateur par groupe •

Des objets à déplacer

Page 69: 10 Missions pour apprendre à créer et programmer son robot

Page 2

1 sur 2

2

Con

seils p

ou

r l’an

imate

ur

Dem

andez aux apprentis roboticiens de fabriquer l’accessoire « pince » et de le connecter à l'avant du robot. C

onnectez également l’accessoire du capteur à ultrasons

qui devrait s'intégrer parfaitement sous la pince. Les exem

ples de programm

es de ce chapitre utilisent une configuration avec le m

oteur moyen connecté au port D

et le capteur à ultrasons relié au port 1.

Grâce à cette pince et au capteur à ultrasons, le robot a la capacité de détecter, de

saisir et d’éliminer les obstacles. U

n organigramm

e de la façon dont cela pourrait être abordée est le suivant.

C

ette tâche est très similaire à celle du chapitre précédent. La principale différence

réside dans l'utilisation de l’accessoire « pince ». Les bras de la pince sont reliés au m

oteur moyen à travers un engrenage à vis sans fin. C

ela permet une réduction

significative de la vitesse et une augmentation correspondante du couple. P

our activer le G

ripper, utilisez le bloc Moteur m

oyen avec le m

ode « Activité pendant (secondes)

». Une puissance négative ferm

era les bras et une puissance positive les ouvrira. F

aites quelques essais afin de déterminer pendant com

bien de secondes vous devez ferm

er les bras pour attraper l’objet en question.

Exem

ple

de P

rog

ram

me

Com

mencer à tourner lentem

ent A

rrêter les moteurs

Attendre que l’obstacle soit détecté

Fermer la pince

Com

mencer à avancer lentem

ent R

eculer pour s’éloigner

Attendre que l’objet soit à m

oins de 5cm

du robot O

uvrir la pince

Page 70: 10 Missions pour apprendre à créer et programmer son robot

Page 2

2 sur 2

2

AS

TU

CE

: Dans l'e

xem

ple

ci-d

essu

s, n

ous a

vons fe

rmé e

t ouvert

l’acc

essoire

pin

ce e

n u

tilisant le

mode «

Activ

é p

endant (s

econdes)

» d

u b

loc D

ép

lace

men

t et d

irectio

n. C

'est s

ouvent u

n m

eille

ur

choix

que le

s m

odes «

Activ

é p

endant (ro

tatio

ns) »

ou «

Activ

é

pendant (d

egré

s) » ca

r il em

pêch

e le

pro

gra

mm

e d

e s

e b

loquer s

i

la p

ince n

e p

eut p

as fe

rmer c

om

plè

tem

ent e

n ra

ison d

'un o

bje

t à

sais

ir d’a

mple

ur in

atte

ndue. S

i le m

ote

ur d

e la

pin

ce e

st

pro

gra

mm

é p

our fe

rmer p

endant 6

rota

tions, m

ais

sais

it l'obje

t aprè

s

seule

ment 4

rota

tions, le

pro

gra

mm

e

n'a

ttein

dra

jam

ais

les 6

rota

tions re

quis

et n

e s

era

jam

ais

capable

d’a

vancer

jusqu’a

u b

loc d

e p

rogra

mm

atio

n

suiv

ant.

Si le

mote

ur d

e la

pin

ce e

st p

rogra

mm

é

pour fe

rmer p

endant 4

secondes

(com

me d

ans l'e

xem

ple

ci-d

essu

s),

alo

rs mêm

e s

i l'obje

t est s

ais

i au b

out d

e 3

secondes, le

pro

gra

mm

e p

eut s

e p

ours

uiv

re a

prè

s l’é

coule

ment d

es 4

secondes.

Atte

ntio

n !

Un des problèm

es les plus courants que l’on rencontre avec ce programm

e est causé par le capteur à ultrasons. C

omm

e cela a été indiqué dans le chapitre sur le capteur à ultrasons, les ondes sonores du capteur à ultrasons ne se déplacent pas dans une ligne parfaitem

ent droite, mais divergent plutôt vers l'extérieur. P

our cette raison, de tem

ps en temps le robot détecte l'objet avant qu’il ne soit directem

ent en face du robot. D

ans ce cas le robot ne va pas avancer directement vers l’objet, ce qui fait que la

pince aura du mal à le saisir correctem

ent. Cela peut être com

pensé si nécessaire en ajoutant un supplém

ent de quelques degrés de rotation une fois que l'objet a été détecté.

Le p

roch

ain

défi

En utilisant le bloc B

oucle, pouvez-vous m

odifier votre robot pour qu’il continue à

chercher et à éliminer d’autres obstacles ?