Construire et programmer un robot

Transcription

Construire et programmer un robot
Travail de maturité 2014-2015
Construire et programmer un robot
1ère partie : proposition de projets
1 Introduction
Duant ce travail de maturité, vous allez construire et programmer une machine réalisant une
fonctionnalité de votre choix, à l'aide de moteurs, capteurs et d'un microprocesseur «LEGO
Mindstorm NXT ».
La première partie du travail consiste à décrire 2 ou 3 projets que vous souhaitez réaliser. Un seul de
ces 2 ou 3 projets sera finalement retenu.
2 Eléments à prendre en compte pour votre projet
Votre projet devra respecter les éléments suivants :
1. avoir une fonctionnalité ou configuration de base : votre projet doit comporter une
première fonctionnalité ou configuration, suffisamment simple pour pouvoir être mise en
oeuvre, sans trop de difficultés.
Exemple : dans le cas d'un distributeur de bonbons, la fonctionnalité de base consiste à faire
tomber un bonbon lorsque l'utilisateur appuie sur un bouton (i.e sur le capteur tactile).
2. être extensible : votre description de projet comportera plusieurs fonctionnalités
supplémentaires, qui viendront étendre la fonctionnalité de base décrite au point 1.
Exemple : toujours dans le cas du distributeur de bonbons, on peut étendre la fonctionnalité
de base de plusieurs manière :
◦ en permettant l'introduction de pièces de monnaie
◦ en permettant à l'utilisateur d'entrer un code pour vider/charger le distributeur
◦ en permettant à l'utilisateur de choisir entre différentes sortes de bonbons
◦ etc, etc...
3. être réalisable avec le matériel à disposition : La liste ci-dessous indique le matériel que
vous pouvez utiliser. Bien sûr, il n'est pas obligatoire d'utiliser l'ensemble du matériel1 :
◦ 2 briques LEGO Mindstorms NXT
◦ 6 moteurs
◦ 2 capteurs ultrasons (mesure de distances)
◦ 2 capteurs de luminosité
1
La moitié du matériel (1 brique Mindstorms NXT, 3 moteurs, et 1 capteur de chaque type) vous est remise
rapidement. Si nécessaire, l'autre moitié sera disponible, juste avant les vacances de Noël
1
◦ 2 capteurs tactiles
◦ 2 capteurs sonores
Si votre projet le justifie et sur demande, il est possible, d'obtenir un peu de matériel
supplémentaire.
En plus, des moteurs et capteurs, il sera probablement nécessaire d'utiliser également des
briques LEGO. Environ 6 kilos de LEGO seront mis à disposition du groupe. Pour le reste,
il sera possible d'obtenir des pièces d'occasion à un prix raisonnable, par exemple sur la
plateforme www.ricardo.ch
4. présenter un caractère un peu nouveau : il faut éviter de reproduire à l'identique un robot
qui a déjà été créé. Bien sûr, on peut s'inspirer du travail d'autres, et même reprendre une
fonctionnalité qui a déjà été réalisée, mais la conception et la construction doivent être
suffisamment différentes pour présenter un projet original.
3 Outils pour programmer votre robot
3.1 Programmation JAVA
Programmer votre robot en JAVA offre de nombreuses possibilités. De plus, quelques librairies ont
été développées pour faciliter le développement d'une application pour les robots LEGO
Mindstorms en JAVA.
3.1.1 Java Developpement Kit
Pour écrire une application en JAVA, il est nécessaire d'avoir le kit de développement JAVA (JDK).
Il peut être téléchargé à cette adresse :
http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html
3.1.2 LeJOS
LeJOS (www.lejos.org) offre une suite complète pour le développement d'applications pour
Mindstorms, qui contient :
1. un « firmeware » à installer sur le Mindstorms (qui remplace celui installer d'origine par
LEGO)
2. un ensemble de fonctions (librairies) permettant de programmer le robot, ainsi qu'un
ensemble de fonctions permettant l'interaction ordinateur - robot, via bluetooth
3. des outils pour compiler et charger les programmes sur le robot
4. des outils pour aider au développement
5. de nombreux exemples de programme
Pour installer LeJOS, suivre la partie « Getting Started » du didacticiel disponible ici :
http://www.lejos.org/nxt/nxj/tutorial/index.htm
2
3.1.3 Eclipse
Eclipse est un environnement de développement, à télécharger à l'adresse www.eclipse.org ->
Download2.
Une fois Eclipse installé, il faudra installer le plug-in pour LeJOS. Pour ce faire, lire les instructions
disponibles à cette adresse : http://www.lejos.org/nxt/nxj/tutorial/Preliminaries/UsingEclipse.htm
3.2 Programmation avec le logiciel LEGO Mindstorms NXT
Programmer avec le logiciel LEGO est plus simple mais offre également moins de possibilités. Par
conséquent, il est conseillé pour les personnes n'ayant jamais programmé.
Le logiciel peut être téléchargé sur le site de LEGO à cette adresse :http://www.lego.com/enus/mindstorms/downloads/software/nxt-software/download-software/
Attention : prendre le logiciel pour NXT et pas EV3.
3.3 Autres
Il est aussi possible d'utiliser un autre langage et d'autres outils que ceux proposés ci-dessus. Par
exemple, le robot peut être programmé en C (www.robotC.net), avec Matlab
(http://www.mindstorms.rwth-aachen.de/), etc...
Toutefois, les désavantages de cette troisième option, par rapport aux deux premières (JAVA ou
logiciel LEGO) sont les suivants :
1. il est possible que l'acquisition des logiciels (robotc ou Matlab par exemple) ne soit pas
gratuite
2. en cas de problèmes, je ne pourrai vous offrir qu'un support limité.
4 Rédaction des propositions de projet
Chaque proposition de projet contiendra les éléments suivants :
1. une description (1/2 page A4) en français 3 de la fonctionnalité que vous souhaitez
implémenter
2. une indication sur les outils que vous souhaitez utiliser (soit JAVA - leJOS - Eclipse, soit le
logiciel LEGO Mindstorms, soit d'autres outils de votre choix, à préciser)
3. une liste du matériel LEGO nécessaire (indiquer le nombre et le type de capteurs, le nombre
de moteurs, le nombre de briques NXT)
2
3
choisir la version (32 bits ou 64 bits) correspondant à votre ordinateur. Toutefois, en cas de problèmes avec le robot,
même sur un ordinateur 64 bits, essayer d'installer la version 32 bits d'eclipse.
il est aussi possible de rédiger les documents en anglais ou en allemand. Dans ce cas, tous les documents, y compris
le rapport final, seront rédigés dans la langue choisie.
3
5 Quelques exemples pour vous inspirer
Comme source d'inspiration, je mets ici quelques exemples de projets réalisés par d'autres4 :
• Tri des pièces LEGO, d'après leur couleur5 :https://www.youtube.com/watch?
v=jDQgvLB_wnA&index=13&list=PL96B2CAEE0661A097
• Guitare électrique : https://www.youtube.com/watch?v=a-gcrhmxcKY
• Coffre-fort : https://www.youtube.com/watch?v=XjWt4O4bSjQ
• Bancomat : https://www.youtube.com/watch?v=U9CFAZuc1tg6
• Distributeur automatique : https://www.youtube.com/watch?v=uNyO6mYTXIk
Pour information uniquement, voici encore quelques projets plus complets, mais qui vont au-delà
des exigences d'un travail de maturité :
•
•
•
4
5
6
Machine à bière: https://www.youtube.com/watch?v=tSXTirkNrCA
Machine pour construire des avions en papier:
https://www.youtube.com/watch?
v=TDiIOTjyHzU
Machine pour résoudre des sudoku : https://www.youtube.com/watch?v=Mp8Y2yjV4fU
bien sûr il ne s'agit pas de reproduire à l'identique un de ces projets.
on pourrait y ajouter une extension consistant à faire le tri, également d'après la forme (ou la longueur)
ou https://www.youtube.com/watch?v=L0Z-ym0k89Q pour une version plus complète, qui va au-delà d'un travail
de maturité
4

Documents pareils