fonctionnalités et utilisation des robots lego mindstormdbalouek/talks/cours_hippocam... ·...

27
Fonctionnalités et utilisation des robots LEGO Mindstorm Stage «Hippocampe» d’initiation à la recherche École Normale Supérieure, Lyon 14 Mai 2014 Stage «Hippocampe» - Robots 1/23

Upload: others

Post on 13-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Fonctionnalités et utilisation des robots LEGOMindstorm

Stage «Hippocampe» d’initiation à la rechercheÉcole Normale Supérieure, Lyon

14 Mai 2014

Stage «Hippocampe» - Robots 1/23

Page 2: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Bienvenue !

Objectifs

Comprendre les fonctionnalités des robots LEGO MindstormÉcrire votre premier programmeCharger un programme dans le robot

Stage «Hippocampe» - Robots 2/23

Page 3: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Plan

IntroductionQu’est-ce qu’un robot ?Les composantsNavigation etComportementProgrammation parblocsExemples

Stage «Hippocampe» - Robots 3/23

Page 4: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Introduction

Isaac Azimov a popularisé la notion de robotiquedans les années 1930. Il propose trois lois régissantles robots de ses œuvres de science-fiction.

Un robot ne peut porter atteinte à un êtrehumain, ni, restant passif, permettre qu’unêtre humain soit exposé au danger.Un robot doit obéir aux ordres que lui donneun être humain, sauf si de tels ordres entrenten conflit avec la Première loi.Un robot doit protéger son existence tant quecette protection n’entre pas en conflit avec laPremière ou la Deuxième loi.

Stage «Hippocampe» - Robots 4/23

Page 5: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Des utilisations variées

Figure: Mars Exploration Rover est une mission de laNASA ayant pour objectif d’étudier la planète Mars.

Tâches dangereuses pour l’homme

Décontamination d’équipementsExploration en milieu hostile

Stage «Hippocampe» - Robots 5/23

Page 6: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Des utilisations variées

Figure: Fabrication de véhicules automobiles.

Tâches répétitives et/ou stressantes

Chaines de montagesTravail de précision

Stage «Hippocampe» - Robots 6/23

Page 7: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Et bien d’autres encore...

SantéMilitaireJouetsAgricultureSurveillanceTransportsDivertissementBTPDomotique...

Stage «Hippocampe» - Robots 7/23

Page 8: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Qu’est-ce qu’un robot ?

Stage «Hippocampe» - Robots 8/23

Page 9: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Votre but : créer de l’intelligence !

Stage «Hippocampe» - Robots 9/23

Page 10: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

LEGO Mindstorm EV3

Figure: Robots EV3RSTORM et EXPLOR3R

Fonctionnalités500+ pièces et éléments techniquesProcesseur ARM9 et connectivité Internet3 moteurs interactifs, 6 capteurs différentsLogiciel de programmation par blocsContrôle via Télécommande ou application mobile

Stage «Hippocampe» - Robots 10/23

Page 11: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Les composants

Stage «Hippocampe» - Robots 11/23

Page 12: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

La Navigation

Mouvement d’un point à un autreDéplacement sur une distance donnéeRotation selon un angle précisSuivi de trajectoire

Stage «Hippocampe» - Robots 12/23

Page 13: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Le Comportement

Prise de décisionUne condition liée à une observationUne action à effectuer quand la condition est vérifiée

Stage «Hippocampe» - Robots 13/23

Page 14: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Exemple 1

Nous souhaitons que le robot avance tout droit jusqu’à ce qu’il croise unobstacle. A la détection d’un obstacle, il doit effectuer une rotation à 90degrés.

Deux comportements

Avancer tout droitSi obstacle, arrêt et rotation

Stage «Hippocampe» - Robots 14/23

Page 15: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Comment programmer le robot ?

Bloc de programmation : unité de commande

L’enchaînement des blocs de programmation entraîne une exécutioncohérente du robot

Différentes palettes sont disponibles dans l’environnement deprogrammation :

ActionContrôle du déroulementCapteurDonnéesAvancé

Stage «Hippocampe» - Robots 15/23

Page 16: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Palette action

Moteur MoyenGros MoteurDéplacement et directionDéplacement charAffichageSonTémoin d’état de la brique

Stage «Hippocampe» - Robots 16/23

Page 17: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Palette contrôle

DémarrerAttendreBoucleSélecteurInterruption de boucle

Stage «Hippocampe» - Robots 17/23

Page 18: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Palette capteur

Boutons de la briqueCapteur de couleurCapteur infrarougeRotation du moteurMinuteurCapteur tactile

Stage «Hippocampe» - Robots 18/23

Page 19: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Retour sur l’exemple 1

Nous souhaitons que le robot avance tout droit jusqu’à ce qu’il croise unobstacle. A la détection d’un obstacle, il doit effectuer une rotation à 90degrés.

Avancer tout droitBoucle : Répéter "Avancer"

Si obstacle, arrêt et rotationCondition : Détection d’un obstacleAction : Arrêt des moteurs puis rotation à 90 degrés

Stage «Hippocampe» - Robots 19/23

Page 20: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Retour sur l’exemple 1

Avancer tout droitBoucle : Répéter "Avancer"

Stage «Hippocampe» - Robots 20/23

Page 21: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Retour sur l’exemple 1

Avancer tout droitBoucle : Répéter "Avancer"

Stage «Hippocampe» - Robots 21/23

Page 22: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Exemple 2 : Déplacement dans un plan

Etape 1 : Examiner la situation

Comprendre le problème et identifier vos objectifsQuelle ma situation de départ ?Quelle est ma condition d’arrivée ?Quels sont les capteurs nécessaires ?

Stage «Hippocampe» - Robots 22/23

Page 23: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Exemple 2 : Déplacement dans un plan

Etape 2 : Définir le comportement global du robot

Est-ce que le parcours est connu ?Comment réagir face aux obstacles ?

Stage «Hippocampe» - Robots 22/23

Page 24: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Exemple 2 : Déplacement dans un plan

Etape 3 : Découpage du comportement global

Mettre en évidence les étapes menant à l’objectifQuelles actions ?

Stage «Hippocampe» - Robots 22/23

Page 25: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Exemple 2 : Déplacement dans un plan

Etape 4 : Définir la séquence d’étapes

Ecrire la séquence permettant de résoudre le problèmeQuel est l’ordre logique des étapes ?

Stage «Hippocampe» - Robots 22/23

Page 26: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Exemple 2 : Déplacement dans un plan

Etape 5 : Traduire la séquence d’étapes

Exprimer chacune des étapes en terme de blocs de programmation

Stage «Hippocampe» - Robots 22/23

Page 27: Fonctionnalités et utilisation des robots LEGO Mindstormdbalouek/talks/cours_hippocam... · 2014-05-14 · Fonctionnalités et utilisation des robots LEGO Mindstorm Stage«Hippocampe»d’initiationàlarecherche

Et maintenant...

Merci de votre attentionC’est à vous de jouer !

Stage «Hippocampe» - Robots 23/23