Vous êtes sur la page 1sur 15

REPUBLIQUE DEMOCRATIQUE DU CONGO

MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET UNIVERSITAIRE

UNIVERSITE PROTESTANTE AU CONGO(UPC)


Faculté des Sciences Informatiques

Projet d’étude à réaliser

ROBOT SUIVEUR DE LIGNE

Professeur responsable : KAPITA

Assistant : ZUIYA
ANNEE ACADEMIQUE 2022-2023
Sommaire
Introduction…………………………………………………………………………………3
1. Présentation générale du projet...........................................................................................4
1.1 Le
Robot..................................................................................................................................4
1.2 La tension
d’alimentation....................................................................................................4
1.3 La consommation du
courant.............................................................................................4
1.4 La tension
d’alimentation....................................................................................................4
1.5 La tension d’alimentation des
actionneurs......................................................................4
1.6 Le
terrain.................................................................................................................................4
2. La
mécanique……………………...........................................................................................5
2.1 Le
chassis.................................................................................................................................5
3.
L’électronique……………………………............................................................................................6
3.1 Présentation des composants
utilisés................................................................................6
4. La programmation…….
……………….............................................................................................7
5. Diagramme de
fonctionnement…...........................................................................................10
5.1 Expression fonctionnelle du
besoin..................................................................................10
5.2 Analyse
fonctionnelle……………. ..................................................................................10
5.3 Partition des
actions………………..................................................................................11
6. Fonctionnement du robot sur la
piste….................................................................................11
7. Les
limitations……………………………...........................................................................................11
8.
Applications………………………………...........................................................................................12
9. Difficultés rencontrés……………………………………………………………………12
10. Bibliographie……………………………………………………………………………13

0. Introduction
Durant cette troisième année académique il nous a été demander dans le cadre du cours de
Robotique de réaliser un robot suiveur de ligne. Comme son nom l'indique il doit pouvoir
suivre un parcours en tout autonomie. L’ordre nous avait été donner afin que nous puissions
nous chalenger et se dire qu’on moins une fois dans notre vie, nous avons été capable de
réaliser un Robot qu’elle qu’il soit. Beaucoup prendront des chemins différents, réseaux,
sécurité, etc. D’autres resterons dans le domaine de la robotique, mais qui que nous soyons
dans cette promotion de G3 sciences informatique de l’université protestante au Congo, nous
aurons construit un Robot.
En se mettant à l’esprit que ‘’la seule source de connaissance c’est l’expérience’’, nous avons
acquis en réalisant ce robot une expérience importante pour comprendre au niveau pratique le
fonctionnement des microcontrôleurs, des capteurs ainsi que des actionnaires.
Oui ! Nous avons fait de la robotique.
1. Présentation générale du projet.
Dans ce chapitre nous expliquerons de la manière la plus simple possible le fonctionnement
de notre robot, de la tension de la partie contrôle, de sa consommation en courant, de la
consommation de la tension d’alimentation des actionnaires.
1.1 Le Robot
Pour vous donner une idée du robot, il est bien loin de l’image des robots que nous voyons
dans les plus grands laboratoires de robotique en ce qui concerne la forme, par contre il
exécute parfaitement la tâche qui lui a été demander ‘’suivre une ligne’’.
1.2 Tension d’alimentation de la partie contrôle
La tension est comprise entre 7V et 12V proportionnellement à la partie contrôle qui accepte
une telle plage de tension.
1.3 Quel est la consommation du courant
La consommation sera calculé grâce à la carte qui lui sert de cœur ou d’alimentation disons, et
cette consommation est de 50mA.
1.4 Tension d’alimentation des actionneurs

 Moteur à courant continu DC :


Ce type de petit moteur fonctionne avec une tension d’alimentation variant entre 4,5V et 9V.
1.5 Le terrain
Le robot se déplace sur une bâche de couleur blanche parer d’une ligne noir faite avec un
isolant.

2. La mécanique
Cette partie fut particulièrement compliqué car les composants étaient vraiment difficiles à
trouver à cause du très petit réseau des vendeurs de composant dans notre ville. Parmi ces
composant les moteurs à courant continu et les roues furent un calvaire à trouver pour nous
qui n’avions pas de réseau de vendeur.
2.1 Le châssis
Le châssis est le carton d’une tondeuse que nous avons réquisitionné, à ce carton nous avons
ajouté des roues à l’extérieurs, à l’intérieur nous avons mis les moteurs, la carte et la pile
d’alimentation, au-devant nous avons placés nos deux capteurs infrarouges.
Les moteurs fonctionnent en 9 volts au maximum de leur puissance, après
quelques tests nous avons remarqué que les moteurs avaient besoin de 1 A en
charge pour fonctionner. Donc pour avoir une vitesse max nous appliquons une
tension de 9V et pour arrêter les moteurs une tension de 0V.

Nous aurons c'est 3 cas possibles aller tout droit tourner à gauche ou tourner à droite Nous
ferons en sorte que le robot aille le plus vite possible en ligne droite, il faudra donc alimenter
les 2 moteurs au maximum (9 Volts), et lorsque l'on tournera, l'un des 2 moteurs restera
constamment au maximum et nous réglerons la vitesse de l'autre moteur afin de faire varier la
vitesse en fonction du degré du virage.

3. L’électronique
Probablement la partie où nous avons passé le plus de temps, c'est également celle où les
recherches ont été les plus longues ainsi que les tests préalables, et c'est aussi
malheureusement la partie qui nous a causé le plus de soucis et d'erreurs.
3.1 Présentation des composants utilisés
Pour la réalisation de ce projet nous avons eu à utiliser plusieurs composant tel que les
moteurs à courant continu dc qui aide à la mobilité du robot ainsi que le Driver L298 qui
nous permet de gérer les moteurs, sans oublié nos capteurs infrarouges qui nous renvoient
l’information sur l’état du chemin. Et tout ceci est gérer par une carte arduino UNO.
Nom du Composant Photo
Carte Arduino mega

2 Capteurs Infrarouge

Motor Driver L298N

Moteur à courant Continu

4. La programmation
Ne connaissant pas les principes de la programmation ‘’en arduino’’, nous avons dû
apprendre petit à petit quels était les significations des mots ainsi que des principes. Afin
d’assimiler le code obtenu en open source. Comme tout travaille scientifique qui se respecte,
le chemin menant au lieu d’obtention du code se trouve dans la bibliographie.
Code Source:
#define enA 10 //la variation de vitesse du moteur numéro 1
#define in1 9 //sens de rotation pour le moteur numéro 1
#define in2 8 //sens de rotation pour le moteur numéro 1
#define in3 7 //sens de rotation pour le moteur numéro 2
#define in4 6 //sens de rotation pour le moteur numéro 2
#define enB 5 //la variation de vitesse du moteur numéro 2

//Ici on initialise les variable que nous utiliserons pour nos capteurs infrarouge

#define R_S A0 //capteur infrarouge gauche


#define L_S A1 //capteur infrarouge droit

void setup(){

pinMode(R_S, INPUT); // ici on declare le capateur infrarouge de gauche en entréé


pinMode(L_S, INPUT); // ici on declare le capateur infrarouge de droite en entréé

//Configuration du Driver L298


//Toute les pin sont déclaré en sortie

pinMode(enA, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
pinMode(enB, OUTPUT);

analogWrite(enA, 150); // le cycle de service 0 à 255 Activer la broche A pour la vitesse du


moteur 1
analogWrite(enB, 150); // le cycle de service 0 à 255 Activer la broche B pour la vitesse du
moteur 2
delay(1000);
}
void loop(){
if((digitalRead(R_S) == 0)&&(digitalRead(L_S) == 0)){forword();} //si le capteur droit et le
capteur gauche sont de couleur blanche, il appellera la fonction forword

if((digitalRead(R_S) == 1)&&(digitalRead(L_S) == 0)){turnRight();} //si le capteur droit est


noir et le capteur gauche est blanc, il appellera la fonction tourner à droite

if((digitalRead(R_S) == 0)&&(digitalRead(L_S) == 1)){turnLeft();} //si le capteur droit est


blanc et le capteur gauche est noir, il appellera la fonction tourner à gauche

if((digitalRead(R_S) == 1)&&(digitalRead(L_S) == 1)){Stop();} //si le capteur droit et le


capteur gauche sont de couleur noire, il appellera la fonction Stop
}

/*Cette partie du code représente parfaitement ce qui fut appris avec l'assiatant bernice lors de
nos séances
surtout sur le fonctionnement du pont en H
On bloque de couran dans deux transistor ou dans deux relais afin que le moteur puisse
changer de sens de rotation*/
//Pour cela 4 fonctions ont donc été implémenter pour le fonctionnement de nos moteurs.

//
void forword(){ //forword
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
}

void turnRight(){ //turnRight


digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
}

void turnLeft(){ //turnLeft


digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
}

void Stop(){ //stop


digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
}

5. Diagrammes de fonctionnement
5.1 Expression fonctionnelle du besoin
5.2 Analyse fonctionnelle

5.3 Partition des actions


6. Fonctionnement du robot sur la piste
Nous plaçons le robot sur la ligne, ligne se trouvant entre nos deux capteurs infrarouges ;
- Si le capteur droit et le capteur gauche sont sur la bâche blanche, il continuera
d’avancer tout droit.
- Si le capteur droit se trouve sur la ligne noire et le capteur gauche est sur la bâche
blanche, il tournera à droite.
- Si le capteur droit se trouve sur la bâche blanche et le capteur gauche est sur la ligne
noire, il tournera à gauche.
- Si le capteur gauche et le capteur droit se trouve sur la ligne noire, alors le robot
s’arrête.

7. Les limitations.

 Le robot n’est pas programmé pour réagir en cas d’obstacle sur son chemin.
 Le Robot de peut pas faire marche arrière.
Le robot n’est pas intelligent, il exécute ces actions selon son programme sans réagir
proportionnellement à son environnement.

8. Application dans la vie active ou dans l’industrie


 Dans la vie active : On peut en utiliser pour les taches de maintenances
domiciles.
Exemple :
- Tondre la pelouse sur une étendue de 100 mètres, d’un point X à un point Y.

 Dans l’industrie : On peut l’utiliser pour acheminer des colis dans une
usine, du parking à la zone de stockage.
Exemple :
- Acheminer le lot de carton de machine à laver dans la zone de stockage.

9. Difficultés rencontrés
Nous remarquons que dans une zone lumineuse, les capteurs infrarouges on difficultés à se
saisir de l’information qui leur est envoyé, et donc d’exécuter correctement la tâche qui lui est
attribué. Nous ne sommes donc pas parvenir tout au long de nos batteries de test à suivre
comme il se doit une ligne, du début à la fin.
Bibliographie
https://www.youtube.com/watch?v=4PQgjjOqJa4&t=167s
https://raw.githubusercontent.com/embeddedlab786/line_follower_2ir/master/How%20to
%20Make%20a%20Line%20Follower%20Robot%20using%20Arduino%2C
%20L298%20Motor%20Driver%20and%20IR%20Sensor.png
https://www.thierry-lequeu.fr/data/RAP-LALLEMAND-VIDAL.pdf
1. HYBANI PRINCIA Hans
2. KAPEND MBAV Moïse
3. RUBUZ A RUBUZ Peniel
4. MBOMBA BOOTO Maxime
5. ASHEMA TADIKETE Berlice
6. MASSAMBA NKUBIKI Anaïs
7. MINIMBU BAMBEBILA Keren
8. YOLOYOLO MEALO Seth
9. NGOYA MBUMBA Ornella
10.MBU KAPENGA Synthia
11.ELONGA BONSOMI Manuela
12.KABOYI MUSSA Christian
13.MBALA MAKONDA Devernay
14.KUKWABANTU BAHATI Jonathan
15.MANZOMBI MANZOMBI Bénédicte
16.TSHIMBALANGA KASENDA Jean
17.IKOMO BITALO Abetty
18.NZAILU -A NZAU Samuel
19.ASHILAKI OKITANGONGE Bénédicte
20.KEBA VEBENA Kestia

Vous aimerez peut-être aussi