Académique Documents
Professionnel Documents
Culture Documents
‘ WALL-E ’
REALIS É PAR : ENCADR É PAR :
EL MHAMDI NOUHA
1
RESUME
L'évitement des obstacles est l'un des aspects les plus importants de la
robotique mobile. Sans elle, le mouvement des robots serait très
contraignant et fragile.
Ceci peut être conçu pour construire un véhicule robotisé qui évite les
obstacles en utilisant des capteurs à ultrasons pour ses mouvements.
2
TABLE DES MATIERES
INTRODUCTION
1. DESCRIPTION DU SYSTEME . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
2. CAHIER DE CHARGE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
1. VUE GLOBAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2. ARDUINO UNO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3. CAPTEUR ULTRA-SON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4. MOTOR DC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
5. SERVO-MOTOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1. DESIGN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3. PROGRAMMATION D’ARDUINO . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
CODE
CONCLUSION
3
TABLE DES FIGURES
FIGURE 5 : MOTEUR DC
FIGURE 6 : SERVOMOTEUR
FIGURE 14 : WALL-E
4
INTRODUCTION
La robotique a depuis toujours été un domaine intéressant et en pleine
croissance.
Etant donné qu’elle est aussi considérée comme une branche de l’ingénierie,
les applications de la robotique connaissent une considérable augmentation
afin de se conformer au progrès technologique. C’est ainsi que le concept de
robot mobile et ses complexités a évolué positivement avec différentes
applications, notamment la planification de parcours l’auto-ocalisation et
l’interprétation de cartes.
L’origine du mot robot provient de la langue tchèque dans laquelle sont
ancêtre ”robota” signifie travail forcé. Le terme de robotique quant à lui est
apparu en 1942 dans le cycle universellement connu rédigé par Isaac Asimov
et intitulé ”Les robots”.
Au cours de l’histoire on peut distinguer 3 types de robots correspondant en
quelques sorte à l’évolution de cette ”espèce” créée par l’Homme.
Le premier type de machine que l’on peut appeler robot correspond aux
”Automates”.
Ceux-ci sont généralement programmés à l’avance et permettent d’effectuer
des actions répétitives.
Le second type de robot correspond à ceux qui sont équipés de capteurs (en
fait les sens du robot). On trouve des capteurs de température, photo-
électronique, à ultrasons pour par exemple éviter les obstacles et/ou suivre
une trajectoire. Ces capteurs vont permettre au robot une relative adaptation
à son environnement afin de prendre en compte des paramètres aléatoires qui
n’aurait pu être envisagés lors de leur programmation initiale.
Ces robots sont donc bien plus autonomes que les automates mais
nécessitent un investissement en temps de conception et en argent plus
conséquent.
Enfin le dernier type de robot existant correspond à ceux disposant d’une
intelligence dite ”artificielle” et reposant sur des modèles mathématiques
complexes tels que les réseaux de neurones. En plus de capteurs physiques
comme leurs prédécesseurs, ces robots peuvent prendre des décisions
5
beaucoup plus complexes et s’appuient également sur un apprentissage de
leurs erreurs comme peut le faire l’être humain. Bien sûr il faudra attendre
encore longtemps avant que le plus ”intelligent” des robots ne soit égal, tant
par sa faculté d’adaptation que par sa prise de décisions, à l’Homme.
Dans ce mini projet, nous allons nous intéresser à un type bien précis des
robots mobiles : le robot évitant les obstacles, un robot autonome qui évite les
collisions avec des obstacles inattendus, tout en focalisant notre intérêt sur
la question suivante : comment serait-il possible de façonner un robot mobile
évitant les obstacles qui combine à la fois efficacité et rapidité ?
Dans le but de répondre à cette problématique, nous allons dans un premier
temps opter à une étude générale portant sur notre robot mobile, en
commençant par une analyse sur les différentes fonctions que doit satisfaire
notre robot pour arriver enfin à obtenir une conception claire et nette de notre
robot.
Ensuite, ayant déterminé les critères à satisfaire pour assurer un bon choix
de matériaux et composants utilisés pour sa confection, on va présenter les
différents outils technologiques en précisant leurs rôles puis leurs modes de
fonctionnement.
Nous donnons un nom à notre robot qui est ‘WALL-E’ pour rendre notre projet
spécial et plus amusant.
6
1. GENERALITES
1. DESCRIPTION DU SYSTEME
Notre robot éviteur d’obstacles utilise un capteur qui mesure la distance
qui le sépare avec les déférents objets qui l’entoure. L’information est
traitée par un microcontrôleur.
2. CAHIER DE CHARGE
On peut assumer que pour un bon fonctionnement du robot, ce dernier doit
satisfaire les critères suivants :
- Il doit assurer un mouvement de translation.
- Il doit se déplacer aisément avant et après la détection d’un obstacle.
- Il doit être très léger, facile à prendre et à manipuler, contrôlable et
rigide.
- Son montage et démontage doit se faire d’une manière simple et rapide.
- Il doit avoir plus d’autonomie concernant sa batterie.
- Le positionnement du robot à l’aide de placement de ses senseurs doit
être relativement précis.
- Symétrie : ceci constitue le point déterminant de cette structure. La
symétrie permet des performances intéressantes en rotation puisque le
centre de masse peut être situé au centre du robot, sur l’axe des roues
motrices.
7
Le centre de masse se retrouve le plus près possible de l’axe des roues
motrices pour faciliter les différents mouvements.
La base du robot tient généralement tous les composants qui font fonctionner
le robot.
8
2. MATERIAUX ET COMPOSANTS
1. VUE GLOBAL
Le choix des matériaux est une tâche fondamentale et très complexe, et pour
réussir à bien l’aborder.
L’idée est d’utiliser une carte Arduino
pour lire les données reçues par un, ou
plusieurs, capteur(s) à ultrasons.
Lorsque le capteur détecte un obstacle
devant lui, l’Arduino doit envoyer des
instructions aux moteurs qui pilotent
les roues du robot pour l’éviter. Le
robot serait en partie constitué de
châssis et de composantes
électroniques (Arduino, capteur à FIGURE 1 : STRUCTURE DU ROBOT WALL-E
ultrasons, moteurs, …) serait fixé au
châssis (une plaque bois) à l’aide d’une colle.
9
2. ARDUINO UNO
Une carte Arduino est une petite carte
électronique équipée d’un
microcontrôleur. Le microcontrôleur
permet, à partir d’événements
détectés par des capteurs, de
programmer et commander des
actionneurs; la carte Arduino est donc
une interface programmable.
Elle peut être programmé pour
analyser et produire des signaux
FIGURE 2 : UNE CARTE ARDUINO UNO
électriques, de manière à effectuer des
tâches très diverses comme le contrôle des appareils domestiques,
éclairage, chauffage, le pilotage d’un robot, de l’informatique embarquée,
etc.
10
3. CAPTEUR ULTRA-SON
L’utilisation d’un capteur est indispensable
dans notre projet. En effet, c’est un outil qui
permet la détection et par conséquent
l’évitement d’obstacles qui est la cible de notre
étude. Ceci dit, le problème auxquelles on devait
s’imposer était le choix du meilleur capteur à
FIGURE 3 : ULTRA-SON HC-SR04
utiliser dans les mesures de concilier le temps de
réponse et le coût de production. Après plusieurs comparaisons et
distinctions des capteurs, on était convaincus que celui dont on avait
besoin était le capteur ULTRA-SON HC-SR04.
Fonctionnement Du Capteur
Le capteur ultra-son HC-SR04 est un dispositif chinois qui comme les
autres capteurs ultra-son émet à intervalles réguliers de courtes
impulsions sonores à haute fréquence, qui à leurs tours se propagent dans
l’air à la vitesse du son, et se réfléchissent et reviennent sous forme d’écho
lorsqu’elles rencontrent un objet. Puis, ce dernier calcule la distance le
séparant de la cible sur la base du temps écoulé entre l’émission du signal
et la réception de l’écho.
11
4. MOTEUR DC
Il s’agit d’un convertisseur
électromécanique permettant la conversion
bidirectionnelle d’énergie entre une
installation électrique parcourue par un
courant continu et un dispositif mécanique
; selon la source d’énergie.
- En fonctionnement moteur, l’énergie
électrique est transformée en énergie
FIGURE 5 : MOTEUR DC
mécanique.
- En fonctionnement générateur, l’énergie mécanique est transformée en
énergie électrique (elle peut se comporter comme un frein). Dans ce cas elle
est aussi appelée dynamo.
Cependant, la machine à courant continu étant réversible et susceptible de
se comporter soit en « moteur » soit en « générateur » dans les quatre
quadrants du plan couple-vitesse, la distinction moteur/générateur se fait «
communément » par rapport à l’usage final de la machine.
12
5. SERVO-MOTEUR
Un servomoteur est un système asservi
(ou système bouclé) ; il s’agit d’un moteur
à courant continu enfermé dans un boîtier
de petite taille avec des constituants
électroniques et mécanique. Sa
fonctionnalité est de tenir une position
angulaire donnée fournie au système en
entrée sous forme d’un signal électrique.
FIGURE 6 : SERVOMOTEUR
On en trouve de toutes les tailles et de
toutes les puissances. La plupart du temps la sortie peut se positionner
entre 0 et 180°.
Il en existe également dont la sortie peut se débattre sur seulement 90° et
d’autres, ayant un plus grand débattement, sur 360°.
13
- Un capteur de position de l’angle d’orientation de l’axe (un potentiomètre).
- Une carte électronique pour le contrôle de la position de l’axe et le pilotage
du moteur à courant continu.
- Les fils, qui sont au nombre de trois.
- L’axe de rotation sur lequel est monté un accessoire en plastique ou en
métal.
- Le boitier qui le protège.
14
Cela signifie principalement que vous pouvez inverser la direction du
courant et donc renverser le sens de rotation du moteur. Le principe de
fonctionnement est basé sur 4 éléments du circuit communément nommés
contacts et identifiés comme suit : Haut Côté Gauche, Haut Côté Droit,
Bas-Côté Droit et Bas-Côté Gauche.
Le choix des matériaux était la phase la plus délicate dans notre projet.
En effet, il ne portait pas seulement sur un aspect purement technique
répondant à des exigences fonctionnelles, mais aussi à des attentes
relevant des préférences des utilisateurs dans le cadre d’un marché
spécifique. En gros, le choix des matériaux a été analysé sous l’angle de
l’ingénierie des matériaux, du temps de réponse, sans oublier enfin le
côté esthétique (le design industriel).
15
III. CONSTRUCTION DU WALL-E
La construction de notre robot WALL-E était la dernière tâche qu’on devait
réaliser, les études ont déjà été terminé et les matériaux déjà mise en place,
il ne manquait qu’un châssis pour assimiler ces dispositifs puis vérifier si
les mesures qu’on a prises nous ont emmené à concilier entre le côté
technique et esthétique.
1. DESIGN
Voici le schéma de notre robot WALL-E.
16
2. ETAPES DE CONSTRUCTION DU
ROBOT WALL-E
Après avoir obtenu tous les composants, nous avons commencé à assembler
le robot éviteur des obstacles WALL-E.
(FIGURE : 9).
ETAPE 1
ETAPE 2
Les moteurs DC sont fixés au châssis à l'aide d'une colle, et les quatre roues
17
On met la batterie de 9V en place dans le châssis central .
ETAPE 3
Le moteur est connecté à la bonne paire de bornes, les moteurs avant aux
bornes avant, et les moteurs arrière aux bornes arrière.
18
ETAPE 4
Nous avons branché le servo dans les broches de l'en-tête du servo 1 sur le
Motor Driver Sheild avec le fil de signal vers l'intérieur.
Ensuite, on branche quatre fils dans le capteur et sur Sheild, les fils de masse
(Ground) et de Vcc dans les broches de masse (Ground) et de 5V sur le Sheild,
puis la broche de déclenchement (Trigger) sur la broche 2 et la broche d'écho
sur la broche 13.
3. PROGRAMMATION D’ARDUINO
Maintenant que la voiture robot évitant les obstacles est terminée, regardons
le code (PAGE 21-23).
19
2. backward() : mouvement en arrière du robot.
FIGURE 14 : WALL-E
20
CODE
//ARDUINO OBSTACLE AVOIDING distance = readPing();
CAR//
delay(100);
#include <AFMotor.h>
distance = readPing();
#include <NewPing.h>
delay(100);
#include <Servo.h>
distance = readPing();
delay(100);
#define TRIG_PIN A0
distance = readPing();
#define ECHO_PIN A1
delay(100);
#define MAX_DISTANCE 200
}
#define MAX_SPEED 190 // sets speed of
DC motors
int distanceR = 0;
delay(300);
boolean goesForward=false;
moveStop();
int distance = 100;
delay(200);
int speedSet = 0;
distanceR = lookRight();
delay(200);
void setup() {
distanceL = lookLeft();
delay(200);
myservo.attach(10);
myservo.write(115);
if(distanceR>=distanceL)
delay(2000);
{
21
turnRight(); delay(100);
moveStop(); }
}else
{ int readPing() {
turnLeft(); delay(70);
} if(cm==0)
}else {
{ cm = 250;
moveForward(); }
} return cm;
distance = readPing(); }
void moveStop() {
{ motor2.run(RELEASE);
myservo.write(50); motor3.run(RELEASE);
delay(500); motor4.run(RELEASE);
delay(100);
return distance;
} if(!goesForward)
{ motor1.run(FORWARD);
myservo.write(170); motor2.run(FORWARD);
delay(500); motor3.run(FORWARD);
22
{
motor2.setSpeed(speedSet); motor1.run(FORWARD);
motor3.setSpeed(speedSet); motor2.run(FORWARD);
motor4.setSpeed(speedSet); motor3.run(BACKWARD);
delay(5); motor4.run(BACKWARD);
} delay(500);
} motor1.run(FORWARD);
} motor2.run(FORWARD);
motor3.run(FORWARD);
goesForward=false; }
motor1.run(BACKWARD);
motor3.run(BACKWARD); motor1.run(BACKWARD);
motor4.run(BACKWARD); motor2.run(BACKWARD);
23
CONCLUSION
En guise de conclusion, on voit que les choix qu’on a opté pour ont été les
plus adéquates pour la conception de ce robot éviteur d’obstacle, soit en
essayant d’améliorer son temps de réponse, ou tout simplement en le
programmant pour qu’il réalise la tâche demandée qui est l’évitement
d’obstacle.
Nous avons presque passé un mois à construire ce projet, nous avons fait
face à trop de difficultés au cours de réalisation de ce mini projet, mais
grâce à notre discipline et notre curiosité, et à l'aide des étudiants diplômés
et des professeurs de l’Université Abdelmalek Essaâdi, nous avons réussi à
réaliser ce projet.
24
REFERENCES
BOOKS
- D.Floreano and J. Urzelai."Evolutionary Robots with Online Self-
WEBSITES
- www.livescience.com/topics/robots
- www.robotictechnologyine.com
- www.popularmechanics.com/technology/robots
- www.mouser.com/applications/robotics-technology
- www.datasheetcatalog.com
- www.instructabal.com
- science.howstuffworks.com/robot2.htm
25